<?php
	/**
	 * The abstract TableUserProjectGen class defined here is
	 * code-generated and contains all the basic CRUD-type functionality as well as
	 * basic methods to handle relationships and index-based loading.
	 *
	 * To use, you should use the TableUserProject subclass which
	 * extends this TableUserProjectGen class.
	 *
	 * Because subsequent re-code generations will overwrite any changes to this
	 * file, you should leave this file unaltered to prevent yourself from losing
	 * any information or code changes.  All customizations should be done by
	 * overriding existing or implementing new methods, properties and variables
	 * in the TableUserProject class.
	 * 
	 * @package My Application
	 * @subpackage GeneratedDataObjects
	 * @property-read integer $Id the value for intId (Read-Only PK)
	 * @property integer $CategoryId the value for intCategoryId 
	 * @property integer $SubcategoryId the value for intSubcategoryId 
	 * @property string $UserName the value for strUserName (Unique)
	 * @property string $Password the value for strPassword (Not Null)
	 * @property string $Firstname the value for strFirstname 
	 * @property string $Lastname the value for strLastname 
	 * @property string $Companyname the value for strCompanyname 
	 * @property string $Mail the value for strMail (Not Null)
	 * @property string $Mail2 the value for strMail2 
	 * @property string $Ip the value for strIp 
	 * @property string $Country the value for strCountry 
	 * @property string $City the value for strCity 
	 * @property string $Address1 the value for strAddress1 
	 * @property string $Address2 the value for strAddress2 
	 * @property string $PostalCode the value for strPostalCode 
	 * @property string $Phone the value for strPhone 
	 * @property string $Fax the value for strFax 
	 * @property QDateTime $LoginDate the value for dttLoginDate 
	 * @property QDateTime $LogoutDate the value for dttLogoutDate 
	 * @property QDateTime $TimeupDate the value for dttTimeupDate 
	 * @property integer $UserType the value for intUserType 
	 * @property integer $UserLevel the value for intUserLevel 
	 * @property integer $BoothCount the value for intBoothCount 
	 * @property integer $PortfolioCount the value for intPortfolioCount 
	 * @property integer $PointBalance the value for intPointBalance (Not Null)
	 * @property integer $PointInTotal the value for intPointInTotal 
	 * @property integer $PointOutTotal the value for intPointOutTotal 
	 * @property integer $PointChargedTotal the value for intPointChargedTotal 
	 * @property integer $LanguageId the value for intLanguageId 
	 * @property string $SendmailNews the value for strSendmailNews 
	 * @property string $SendmailByKeywordInNewProject the value for strSendmailByKeywordInNewProject 
	 * @property string $SendmailByNewBid the value for strSendmailByNewBid 
	 * @property string $Keyword the value for strKeyword 
	 * @property double $RateAsBuyer the value for fltRateAsBuyer 
	 * @property double $RateAsProvider the value for fltRateAsProvider 
	 * @property double $RateAsBuyer6month the value for fltRateAsBuyer6month 
	 * @property double $RateAsProvider6month the value for fltRateAsProvider6month 
	 * @property string $Authorized the value for strAuthorized 
	 * @property string $AuthorizationCode the value for strAuthorizationCode 
	 * @property QDateTime $AuthorizedDate the value for dttAuthorizedDate 
	 * @property string $Active the value for strActive (Not Null)
	 * @property string $Suspended the value for strSuspended (Not Null)
	 * @property integer $AffiliatorId the value for intAffiliatorId 
	 * @property string $AffliatorCode the value for strAffliatorCode 
	 * @property string $FirstnameKana the value for strFirstnameKana 
	 * @property string $LastnameKana the value for strLastnameKana 
	 * @property string $Department the value for strDepartment 
	 * @property QDateTime $RegisterDate the value for dttRegisterDate 
	 * @property double $PercentageWillCharge the value for fltPercentageWillCharge (Not Null)
	 * @property QDateTime $LastAccessDate the value for dttLastAccessDate 
	 * @property double $RateAsBuyer1 the value for fltRateAsBuyer1 
	 * @property double $RateAsBuyer2 the value for fltRateAsBuyer2 
	 * @property double $RateAsBuyer3 the value for fltRateAsBuyer3 
	 * @property double $RateAsBuyer4 the value for fltRateAsBuyer4 
	 * @property double $RateAsBuyer5 the value for fltRateAsBuyer5 
	 * @property double $RateAsBuyer6 the value for fltRateAsBuyer6 
	 * @property double $RateAsProvider1 the value for fltRateAsProvider1 
	 * @property double $RateAsProvider2 the value for fltRateAsProvider2 
	 * @property double $RateAsProvider3 the value for fltRateAsProvider3 
	 * @property double $RateAsProvider4 the value for fltRateAsProvider4 
	 * @property double $RateAsProvider5 the value for fltRateAsProvider5 
	 * @property double $RateAsProvider6 the value for fltRateAsProvider6 
	 * @property-read TableBank $_TableBankAsUser the value for the private _objTableBankAsUser (Read-Only) if set due to an expansion on the table_bank.user_id reverse relationship
	 * @property-read TableBank[] $_TableBankAsUserArray the value for the private _objTableBankAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_bank.user_id reverse relationship
	 * @property-read TableBankRequestIn $_TableBankRequestInAsUser the value for the private _objTableBankRequestInAsUser (Read-Only) if set due to an expansion on the table_bank_request_in.user_id reverse relationship
	 * @property-read TableBankRequestIn[] $_TableBankRequestInAsUserArray the value for the private _objTableBankRequestInAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_bank_request_in.user_id reverse relationship
	 * @property-read TableBankRequestOut $_TableBankRequestOutAsUser the value for the private _objTableBankRequestOutAsUser (Read-Only) if set due to an expansion on the table_bank_request_out.user_id reverse relationship
	 * @property-read TableBankRequestOut[] $_TableBankRequestOutAsUserArray the value for the private _objTableBankRequestOutAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_bank_request_out.user_id reverse relationship
	 * @property-read TableBooth $_TableBoothAsUser the value for the private _objTableBoothAsUser (Read-Only) if set due to an expansion on the table_booth.user_id reverse relationship
	 * @property-read TableBooth[] $_TableBoothAsUserArray the value for the private _objTableBoothAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_booth.user_id reverse relationship
	 * @property-read TableEscrow $_TableEscrowAsUserIdFrom the value for the private _objTableEscrowAsUserIdFrom (Read-Only) if set due to an expansion on the table_escrow.user_id_from reverse relationship
	 * @property-read TableEscrow[] $_TableEscrowAsUserIdFromArray the value for the private _objTableEscrowAsUserIdFromArray (Read-Only) if set due to an ExpandAsArray on the table_escrow.user_id_from reverse relationship
	 * @property-read TableEscrow $_TableEscrowAsUserIdTo the value for the private _objTableEscrowAsUserIdTo (Read-Only) if set due to an expansion on the table_escrow.user_id_to reverse relationship
	 * @property-read TableEscrow[] $_TableEscrowAsUserIdToArray the value for the private _objTableEscrowAsUserIdToArray (Read-Only) if set due to an ExpandAsArray on the table_escrow.user_id_to reverse relationship
	 * @property-read TableFeedback $_TableFeedbackAsUser the value for the private _objTableFeedbackAsUser (Read-Only) if set due to an expansion on the table_feedback.user_id reverse relationship
	 * @property-read TableFeedback[] $_TableFeedbackAsUserArray the value for the private _objTableFeedbackAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_feedback.user_id reverse relationship
	 * @property-read TableItemGet $_TableItemGetAsUser the value for the private _objTableItemGetAsUser (Read-Only) if set due to an expansion on the table_item_get.user_id reverse relationship
	 * @property-read TableItemGet[] $_TableItemGetAsUserArray the value for the private _objTableItemGetAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_item_get.user_id reverse relationship
	 * @property-read TablePaypalRequestOut $_TablePaypalRequestOutAsUser the value for the private _objTablePaypalRequestOutAsUser (Read-Only) if set due to an expansion on the table_paypal_request_out.user_id reverse relationship
	 * @property-read TablePaypalRequestOut[] $_TablePaypalRequestOutAsUserArray the value for the private _objTablePaypalRequestOutAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_paypal_request_out.user_id reverse relationship
	 * @property-read TablePointCharged $_TablePointChargedAsUser the value for the private _objTablePointChargedAsUser (Read-Only) if set due to an expansion on the table_point_charged.user_id reverse relationship
	 * @property-read TablePointCharged[] $_TablePointChargedAsUserArray the value for the private _objTablePointChargedAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_point_charged.user_id reverse relationship
	 * @property-read TablePointIn $_TablePointInAsUser the value for the private _objTablePointInAsUser (Read-Only) if set due to an expansion on the table_point_in.user_id reverse relationship
	 * @property-read TablePointIn[] $_TablePointInAsUserArray the value for the private _objTablePointInAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_point_in.user_id reverse relationship
	 * @property-read TablePointOut $_TablePointOutAsUser the value for the private _objTablePointOutAsUser (Read-Only) if set due to an expansion on the table_point_out.user_id reverse relationship
	 * @property-read TablePointOut[] $_TablePointOutAsUserArray the value for the private _objTablePointOutAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_point_out.user_id reverse relationship
	 * @property-read TablePortfolio $_TablePortfolioAsUser the value for the private _objTablePortfolioAsUser (Read-Only) if set due to an expansion on the table_portfolio.user_id reverse relationship
	 * @property-read TablePortfolio[] $_TablePortfolioAsUserArray the value for the private _objTablePortfolioAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_portfolio.user_id reverse relationship
	 * @property-read TablePrivateMessage $_TablePrivateMessageAsUserIdFrom the value for the private _objTablePrivateMessageAsUserIdFrom (Read-Only) if set due to an expansion on the table_private_message.user_id_from reverse relationship
	 * @property-read TablePrivateMessage[] $_TablePrivateMessageAsUserIdFromArray the value for the private _objTablePrivateMessageAsUserIdFromArray (Read-Only) if set due to an ExpandAsArray on the table_private_message.user_id_from reverse relationship
	 * @property-read TablePrivateMessage $_TablePrivateMessageAsUserIdTo the value for the private _objTablePrivateMessageAsUserIdTo (Read-Only) if set due to an expansion on the table_private_message.user_id_to reverse relationship
	 * @property-read TablePrivateMessage[] $_TablePrivateMessageAsUserIdToArray the value for the private _objTablePrivateMessageAsUserIdToArray (Read-Only) if set due to an ExpandAsArray on the table_private_message.user_id_to reverse relationship
	 * @property-read TableProject $_TableProjectAsUser the value for the private _objTableProjectAsUser (Read-Only) if set due to an expansion on the table_project.user_id reverse relationship
	 * @property-read TableProject[] $_TableProjectAsUserArray the value for the private _objTableProjectAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_project.user_id reverse relationship
	 * @property-read TableProject $_TableProjectAsWonUser the value for the private _objTableProjectAsWonUser (Read-Only) if set due to an expansion on the table_project.won_user_id reverse relationship
	 * @property-read TableProject[] $_TableProjectAsWonUserArray the value for the private _objTableProjectAsWonUserArray (Read-Only) if set due to an ExpandAsArray on the table_project.won_user_id reverse relationship
	 * @property-read TableProjectAttachment $_TableProjectAttachmentAsUser the value for the private _objTableProjectAttachmentAsUser (Read-Only) if set due to an expansion on the table_project_attachment.user_id reverse relationship
	 * @property-read TableProjectAttachment[] $_TableProjectAttachmentAsUserArray the value for the private _objTableProjectAttachmentAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_project_attachment.user_id reverse relationship
	 * @property-read TableProjectBid $_TableProjectBidAsUser the value for the private _objTableProjectBidAsUser (Read-Only) if set due to an expansion on the table_project_bid.user_id reverse relationship
	 * @property-read TableProjectBid[] $_TableProjectBidAsUserArray the value for the private _objTableProjectBidAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_project_bid.user_id reverse relationship
	 * @property-read TableProjectCancel $_TableProjectCancelAsUser the value for the private _objTableProjectCancelAsUser (Read-Only) if set due to an expansion on the table_project_cancel.user_id reverse relationship
	 * @property-read TableProjectCancel[] $_TableProjectCancelAsUserArray the value for the private _objTableProjectCancelAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_project_cancel.user_id reverse relationship
	 * @property-read TableProjectEdit $_TableProjectEditAsUser the value for the private _objTableProjectEditAsUser (Read-Only) if set due to an expansion on the table_project_edit.user_id reverse relationship
	 * @property-read TableProjectEdit[] $_TableProjectEditAsUserArray the value for the private _objTableProjectEditAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_project_edit.user_id reverse relationship
	 * @property-read TableProjectMessage $_TableProjectMessageAsUser the value for the private _objTableProjectMessageAsUser (Read-Only) if set due to an expansion on the table_project_message.user_id reverse relationship
	 * @property-read TableProjectMessage[] $_TableProjectMessageAsUserArray the value for the private _objTableProjectMessageAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_project_message.user_id reverse relationship
	 * @property-read TableProjectRequestCancel $_TableProjectRequestCancelAsBuyer the value for the private _objTableProjectRequestCancelAsBuyer (Read-Only) if set due to an expansion on the table_project_request_cancel.buyer_id reverse relationship
	 * @property-read TableProjectRequestCancel[] $_TableProjectRequestCancelAsBuyerArray the value for the private _objTableProjectRequestCancelAsBuyerArray (Read-Only) if set due to an ExpandAsArray on the table_project_request_cancel.buyer_id reverse relationship
	 * @property-read TableProjectRequestCancel $_TableProjectRequestCancelAsProvider the value for the private _objTableProjectRequestCancelAsProvider (Read-Only) if set due to an expansion on the table_project_request_cancel.provider_id reverse relationship
	 * @property-read TableProjectRequestCancel[] $_TableProjectRequestCancelAsProviderArray the value for the private _objTableProjectRequestCancelAsProviderArray (Read-Only) if set due to an ExpandAsArray on the table_project_request_cancel.provider_id reverse relationship
	 * @property-read TableProjectRequestComplete $_TableProjectRequestCompleteAsBuyer the value for the private _objTableProjectRequestCompleteAsBuyer (Read-Only) if set due to an expansion on the table_project_request_complete.buyer_id reverse relationship
	 * @property-read TableProjectRequestComplete[] $_TableProjectRequestCompleteAsBuyerArray the value for the private _objTableProjectRequestCompleteAsBuyerArray (Read-Only) if set due to an ExpandAsArray on the table_project_request_complete.buyer_id reverse relationship
	 * @property-read TableProjectRequestComplete $_TableProjectRequestCompleteAsProvider the value for the private _objTableProjectRequestCompleteAsProvider (Read-Only) if set due to an expansion on the table_project_request_complete.provider_id reverse relationship
	 * @property-read TableProjectRequestComplete[] $_TableProjectRequestCompleteAsProviderArray the value for the private _objTableProjectRequestCompleteAsProviderArray (Read-Only) if set due to an ExpandAsArray on the table_project_request_complete.provider_id reverse relationship
	 * @property-read TableProjectWon $_TableProjectWonAsBuyer the value for the private _objTableProjectWonAsBuyer (Read-Only) if set due to an expansion on the table_project_won.buyer_id reverse relationship
	 * @property-read TableProjectWon[] $_TableProjectWonAsBuyerArray the value for the private _objTableProjectWonAsBuyerArray (Read-Only) if set due to an ExpandAsArray on the table_project_won.buyer_id reverse relationship
	 * @property-read TableProjectWon $_TableProjectWonAsProvider the value for the private _objTableProjectWonAsProvider (Read-Only) if set due to an expansion on the table_project_won.provider_id reverse relationship
	 * @property-read TableProjectWon[] $_TableProjectWonAsProviderArray the value for the private _objTableProjectWonAsProviderArray (Read-Only) if set due to an ExpandAsArray on the table_project_won.provider_id reverse relationship
	 * @property-read TableTransaction $_TableTransactionAsUser the value for the private _objTableTransactionAsUser (Read-Only) if set due to an expansion on the table_transaction.user_id reverse relationship
	 * @property-read TableTransaction[] $_TableTransactionAsUserArray the value for the private _objTableTransactionAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_transaction.user_id reverse relationship
	 * @property-read TableUserAddress $_TableUserAddressAsUser the value for the private _objTableUserAddressAsUser (Read-Only) if set due to an expansion on the table_user_address.user_id reverse relationship
	 * @property-read TableUserAddress[] $_TableUserAddressAsUserArray the value for the private _objTableUserAddressAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_user_address.user_id reverse relationship
	 * @property-read TableUserItem $_TableUserItemAsUser the value for the private _objTableUserItemAsUser (Read-Only) if set due to an expansion on the table_user_item.user_id reverse relationship
	 * @property-read TableUserItem[] $_TableUserItemAsUserArray the value for the private _objTableUserItemAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_user_item.user_id reverse relationship
	 * @property-read TableUserProfile $_TableUserProfileAsUser the value for the private _objTableUserProfileAsUser (Read-Only) if set due to an expansion on the table_user_profile.user_id reverse relationship
	 * @property-read TableUserProfile[] $_TableUserProfileAsUserArray the value for the private _objTableUserProfileAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_user_profile.user_id reverse relationship
	 * @property-read TableUserStat $_TableUserStatAsUser the value for the private _objTableUserStatAsUser (Read-Only) if set due to an expansion on the table_user_stat.user_id reverse relationship
	 * @property-read TableUserStat[] $_TableUserStatAsUserArray the value for the private _objTableUserStatAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_user_stat.user_id reverse relationship
	 * @property-read TableViolationReport $_TableViolationReportAsUser the value for the private _objTableViolationReportAsUser (Read-Only) if set due to an expansion on the table_violation_report.user_id reverse relationship
	 * @property-read TableViolationReport[] $_TableViolationReportAsUserArray the value for the private _objTableViolationReportAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_violation_report.user_id reverse relationship
	 * @property-read TableWatchList $_TableWatchListAsUser the value for the private _objTableWatchListAsUser (Read-Only) if set due to an expansion on the table_watch_list.user_id reverse relationship
	 * @property-read TableWatchList[] $_TableWatchListAsUserArray the value for the private _objTableWatchListAsUserArray (Read-Only) if set due to an ExpandAsArray on the table_watch_list.user_id reverse relationship
	 * @property-read boolean $__Restored whether or not this object was restored from the database (as opposed to created new)
	 */
	class TableUserProjectGen extends QBaseClass {

		///////////////////////////////////////////////////////////////////////
		// PROTECTED MEMBER VARIABLES and TEXT FIELD MAXLENGTHS (if applicable)
		///////////////////////////////////////////////////////////////////////
		
		/**
		 * Protected member variable that maps to the database PK Identity column table_user_project.id
		 * @var integer intId
		 */
		protected $intId;
		const IdDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.category_id
		 * @var integer intCategoryId
		 */
		protected $intCategoryId;
		const CategoryIdDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.subcategory_id
		 * @var integer intSubcategoryId
		 */
		protected $intSubcategoryId;
		const SubcategoryIdDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.user_name
		 * @var string strUserName
		 */
		protected $strUserName;
		const UserNameMaxLength = 100;
		const UserNameDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.password
		 * @var string strPassword
		 */
		protected $strPassword;
		const PasswordMaxLength = 30;
		const PasswordDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.firstname
		 * @var string strFirstname
		 */
		protected $strFirstname;
		const FirstnameMaxLength = 50;
		const FirstnameDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.lastname
		 * @var string strLastname
		 */
		protected $strLastname;
		const LastnameMaxLength = 50;
		const LastnameDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.companyname
		 * @var string strCompanyname
		 */
		protected $strCompanyname;
		const CompanynameMaxLength = 100;
		const CompanynameDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.mail
		 * @var string strMail
		 */
		protected $strMail;
		const MailMaxLength = 100;
		const MailDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.mail2
		 * @var string strMail2
		 */
		protected $strMail2;
		const Mail2MaxLength = 100;
		const Mail2Default = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.ip
		 * @var string strIp
		 */
		protected $strIp;
		const IpMaxLength = 30;
		const IpDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.country
		 * @var string strCountry
		 */
		protected $strCountry;
		const CountryMaxLength = 50;
		const CountryDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.city
		 * @var string strCity
		 */
		protected $strCity;
		const CityMaxLength = 50;
		const CityDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.address1
		 * @var string strAddress1
		 */
		protected $strAddress1;
		const Address1MaxLength = 255;
		const Address1Default = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.address2
		 * @var string strAddress2
		 */
		protected $strAddress2;
		const Address2MaxLength = 255;
		const Address2Default = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.postal_code
		 * @var string strPostalCode
		 */
		protected $strPostalCode;
		const PostalCodeMaxLength = 20;
		const PostalCodeDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.phone
		 * @var string strPhone
		 */
		protected $strPhone;
		const PhoneMaxLength = 50;
		const PhoneDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.fax
		 * @var string strFax
		 */
		protected $strFax;
		const FaxMaxLength = 50;
		const FaxDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.login_date
		 * @var QDateTime dttLoginDate
		 */
		protected $dttLoginDate;
		const LoginDateDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.logout_date
		 * @var QDateTime dttLogoutDate
		 */
		protected $dttLogoutDate;
		const LogoutDateDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.timeup_date
		 * @var QDateTime dttTimeupDate
		 */
		protected $dttTimeupDate;
		const TimeupDateDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.user_type
		 * @var integer intUserType
		 */
		protected $intUserType;
		const UserTypeDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.user_level
		 * @var integer intUserLevel
		 */
		protected $intUserLevel;
		const UserLevelDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.booth_count
		 * @var integer intBoothCount
		 */
		protected $intBoothCount;
		const BoothCountDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.portfolio_count
		 * @var integer intPortfolioCount
		 */
		protected $intPortfolioCount;
		const PortfolioCountDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.point_balance
		 * @var integer intPointBalance
		 */
		protected $intPointBalance;
		const PointBalanceDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.point_in_total
		 * @var integer intPointInTotal
		 */
		protected $intPointInTotal;
		const PointInTotalDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.point_out_total
		 * @var integer intPointOutTotal
		 */
		protected $intPointOutTotal;
		const PointOutTotalDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.point_charged_total
		 * @var integer intPointChargedTotal
		 */
		protected $intPointChargedTotal;
		const PointChargedTotalDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.language_id
		 * @var integer intLanguageId
		 */
		protected $intLanguageId;
		const LanguageIdDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.sendmail_news
		 * @var string strSendmailNews
		 */
		protected $strSendmailNews;
		const SendmailNewsMaxLength = 1;
		const SendmailNewsDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.sendmail_by_keyword_in_new_project
		 * @var string strSendmailByKeywordInNewProject
		 */
		protected $strSendmailByKeywordInNewProject;
		const SendmailByKeywordInNewProjectMaxLength = 1;
		const SendmailByKeywordInNewProjectDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.sendmail_by_new_bid
		 * @var string strSendmailByNewBid
		 */
		protected $strSendmailByNewBid;
		const SendmailByNewBidMaxLength = 1;
		const SendmailByNewBidDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.keyword
		 * @var string strKeyword
		 */
		protected $strKeyword;
		const KeywordDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer
		 * @var double fltRateAsBuyer
		 */
		protected $fltRateAsBuyer;
		const RateAsBuyerDefault = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider
		 * @var double fltRateAsProvider
		 */
		protected $fltRateAsProvider;
		const RateAsProviderDefault = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_6month
		 * @var double fltRateAsBuyer6month
		 */
		protected $fltRateAsBuyer6month;
		const RateAsBuyer6monthDefault = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_6month
		 * @var double fltRateAsProvider6month
		 */
		protected $fltRateAsProvider6month;
		const RateAsProvider6monthDefault = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.authorized
		 * @var string strAuthorized
		 */
		protected $strAuthorized;
		const AuthorizedMaxLength = 1;
		const AuthorizedDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.authorization_code
		 * @var string strAuthorizationCode
		 */
		protected $strAuthorizationCode;
		const AuthorizationCodeMaxLength = 100;
		const AuthorizationCodeDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.authorized_date
		 * @var QDateTime dttAuthorizedDate
		 */
		protected $dttAuthorizedDate;
		const AuthorizedDateDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.active
		 * @var string strActive
		 */
		protected $strActive;
		const ActiveMaxLength = 1;
		const ActiveDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.suspended
		 * @var string strSuspended
		 */
		protected $strSuspended;
		const SuspendedMaxLength = 1;
		const SuspendedDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.affiliator_id
		 * @var integer intAffiliatorId
		 */
		protected $intAffiliatorId;
		const AffiliatorIdDefault = 0;


		/**
		 * Protected member variable that maps to the database column table_user_project.affliator_code
		 * @var string strAffliatorCode
		 */
		protected $strAffliatorCode;
		const AffliatorCodeMaxLength = 100;
		const AffliatorCodeDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.firstname_kana
		 * @var string strFirstnameKana
		 */
		protected $strFirstnameKana;
		const FirstnameKanaMaxLength = 100;
		const FirstnameKanaDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.lastname_kana
		 * @var string strLastnameKana
		 */
		protected $strLastnameKana;
		const LastnameKanaMaxLength = 100;
		const LastnameKanaDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.department
		 * @var string strDepartment
		 */
		protected $strDepartment;
		const DepartmentMaxLength = 100;
		const DepartmentDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.register_date
		 * @var QDateTime dttRegisterDate
		 */
		protected $dttRegisterDate;
		const RegisterDateDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.percentage_will_charge
		 * @var double fltPercentageWillCharge
		 */
		protected $fltPercentageWillCharge;
		const PercentageWillChargeDefault = 9.50;


		/**
		 * Protected member variable that maps to the database column table_user_project.last_access_date
		 * @var QDateTime dttLastAccessDate
		 */
		protected $dttLastAccessDate;
		const LastAccessDateDefault = null;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_1
		 * @var double fltRateAsBuyer1
		 */
		protected $fltRateAsBuyer1;
		const RateAsBuyer1Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_2
		 * @var double fltRateAsBuyer2
		 */
		protected $fltRateAsBuyer2;
		const RateAsBuyer2Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_3
		 * @var double fltRateAsBuyer3
		 */
		protected $fltRateAsBuyer3;
		const RateAsBuyer3Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_4
		 * @var double fltRateAsBuyer4
		 */
		protected $fltRateAsBuyer4;
		const RateAsBuyer4Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_5
		 * @var double fltRateAsBuyer5
		 */
		protected $fltRateAsBuyer5;
		const RateAsBuyer5Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_buyer_6
		 * @var double fltRateAsBuyer6
		 */
		protected $fltRateAsBuyer6;
		const RateAsBuyer6Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_1
		 * @var double fltRateAsProvider1
		 */
		protected $fltRateAsProvider1;
		const RateAsProvider1Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_2
		 * @var double fltRateAsProvider2
		 */
		protected $fltRateAsProvider2;
		const RateAsProvider2Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_3
		 * @var double fltRateAsProvider3
		 */
		protected $fltRateAsProvider3;
		const RateAsProvider3Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_4
		 * @var double fltRateAsProvider4
		 */
		protected $fltRateAsProvider4;
		const RateAsProvider4Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_5
		 * @var double fltRateAsProvider5
		 */
		protected $fltRateAsProvider5;
		const RateAsProvider5Default = 0.00;


		/**
		 * Protected member variable that maps to the database column table_user_project.rate_as_provider_6
		 * @var double fltRateAsProvider6
		 */
		protected $fltRateAsProvider6;
		const RateAsProvider6Default = 0.00;


		/**
		 * Private member variable that stores a reference to a single TableBankAsUser object
		 * (of type TableBank), if this TableUserProject object was restored with
		 * an expansion on the table_bank association table.
		 * @var TableBank _objTableBankAsUser;
		 */
		private $_objTableBankAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableBankAsUser objects
		 * (of type TableBank[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_bank association table.
		 * @var TableBank[] _objTableBankAsUserArray;
		 */
		private $_objTableBankAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableBankRequestInAsUser object
		 * (of type TableBankRequestIn), if this TableUserProject object was restored with
		 * an expansion on the table_bank_request_in association table.
		 * @var TableBankRequestIn _objTableBankRequestInAsUser;
		 */
		private $_objTableBankRequestInAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableBankRequestInAsUser objects
		 * (of type TableBankRequestIn[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_bank_request_in association table.
		 * @var TableBankRequestIn[] _objTableBankRequestInAsUserArray;
		 */
		private $_objTableBankRequestInAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableBankRequestOutAsUser object
		 * (of type TableBankRequestOut), if this TableUserProject object was restored with
		 * an expansion on the table_bank_request_out association table.
		 * @var TableBankRequestOut _objTableBankRequestOutAsUser;
		 */
		private $_objTableBankRequestOutAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableBankRequestOutAsUser objects
		 * (of type TableBankRequestOut[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_bank_request_out association table.
		 * @var TableBankRequestOut[] _objTableBankRequestOutAsUserArray;
		 */
		private $_objTableBankRequestOutAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableBoothAsUser object
		 * (of type TableBooth), if this TableUserProject object was restored with
		 * an expansion on the table_booth association table.
		 * @var TableBooth _objTableBoothAsUser;
		 */
		private $_objTableBoothAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableBoothAsUser objects
		 * (of type TableBooth[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_booth association table.
		 * @var TableBooth[] _objTableBoothAsUserArray;
		 */
		private $_objTableBoothAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableEscrowAsUserIdFrom object
		 * (of type TableEscrow), if this TableUserProject object was restored with
		 * an expansion on the table_escrow association table.
		 * @var TableEscrow _objTableEscrowAsUserIdFrom;
		 */
		private $_objTableEscrowAsUserIdFrom;

		/**
		 * Private member variable that stores a reference to an array of TableEscrowAsUserIdFrom objects
		 * (of type TableEscrow[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_escrow association table.
		 * @var TableEscrow[] _objTableEscrowAsUserIdFromArray;
		 */
		private $_objTableEscrowAsUserIdFromArray = array();

		/**
		 * Private member variable that stores a reference to a single TableEscrowAsUserIdTo object
		 * (of type TableEscrow), if this TableUserProject object was restored with
		 * an expansion on the table_escrow association table.
		 * @var TableEscrow _objTableEscrowAsUserIdTo;
		 */
		private $_objTableEscrowAsUserIdTo;

		/**
		 * Private member variable that stores a reference to an array of TableEscrowAsUserIdTo objects
		 * (of type TableEscrow[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_escrow association table.
		 * @var TableEscrow[] _objTableEscrowAsUserIdToArray;
		 */
		private $_objTableEscrowAsUserIdToArray = array();

		/**
		 * Private member variable that stores a reference to a single TableFeedbackAsUser object
		 * (of type TableFeedback), if this TableUserProject object was restored with
		 * an expansion on the table_feedback association table.
		 * @var TableFeedback _objTableFeedbackAsUser;
		 */
		private $_objTableFeedbackAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableFeedbackAsUser objects
		 * (of type TableFeedback[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_feedback association table.
		 * @var TableFeedback[] _objTableFeedbackAsUserArray;
		 */
		private $_objTableFeedbackAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableItemGetAsUser object
		 * (of type TableItemGet), if this TableUserProject object was restored with
		 * an expansion on the table_item_get association table.
		 * @var TableItemGet _objTableItemGetAsUser;
		 */
		private $_objTableItemGetAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableItemGetAsUser objects
		 * (of type TableItemGet[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_item_get association table.
		 * @var TableItemGet[] _objTableItemGetAsUserArray;
		 */
		private $_objTableItemGetAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePaypalRequestOutAsUser object
		 * (of type TablePaypalRequestOut), if this TableUserProject object was restored with
		 * an expansion on the table_paypal_request_out association table.
		 * @var TablePaypalRequestOut _objTablePaypalRequestOutAsUser;
		 */
		private $_objTablePaypalRequestOutAsUser;

		/**
		 * Private member variable that stores a reference to an array of TablePaypalRequestOutAsUser objects
		 * (of type TablePaypalRequestOut[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_paypal_request_out association table.
		 * @var TablePaypalRequestOut[] _objTablePaypalRequestOutAsUserArray;
		 */
		private $_objTablePaypalRequestOutAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePointChargedAsUser object
		 * (of type TablePointCharged), if this TableUserProject object was restored with
		 * an expansion on the table_point_charged association table.
		 * @var TablePointCharged _objTablePointChargedAsUser;
		 */
		private $_objTablePointChargedAsUser;

		/**
		 * Private member variable that stores a reference to an array of TablePointChargedAsUser objects
		 * (of type TablePointCharged[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_point_charged association table.
		 * @var TablePointCharged[] _objTablePointChargedAsUserArray;
		 */
		private $_objTablePointChargedAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePointInAsUser object
		 * (of type TablePointIn), if this TableUserProject object was restored with
		 * an expansion on the table_point_in association table.
		 * @var TablePointIn _objTablePointInAsUser;
		 */
		private $_objTablePointInAsUser;

		/**
		 * Private member variable that stores a reference to an array of TablePointInAsUser objects
		 * (of type TablePointIn[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_point_in association table.
		 * @var TablePointIn[] _objTablePointInAsUserArray;
		 */
		private $_objTablePointInAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePointOutAsUser object
		 * (of type TablePointOut), if this TableUserProject object was restored with
		 * an expansion on the table_point_out association table.
		 * @var TablePointOut _objTablePointOutAsUser;
		 */
		private $_objTablePointOutAsUser;

		/**
		 * Private member variable that stores a reference to an array of TablePointOutAsUser objects
		 * (of type TablePointOut[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_point_out association table.
		 * @var TablePointOut[] _objTablePointOutAsUserArray;
		 */
		private $_objTablePointOutAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePortfolioAsUser object
		 * (of type TablePortfolio), if this TableUserProject object was restored with
		 * an expansion on the table_portfolio association table.
		 * @var TablePortfolio _objTablePortfolioAsUser;
		 */
		private $_objTablePortfolioAsUser;

		/**
		 * Private member variable that stores a reference to an array of TablePortfolioAsUser objects
		 * (of type TablePortfolio[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_portfolio association table.
		 * @var TablePortfolio[] _objTablePortfolioAsUserArray;
		 */
		private $_objTablePortfolioAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePrivateMessageAsUserIdFrom object
		 * (of type TablePrivateMessage), if this TableUserProject object was restored with
		 * an expansion on the table_private_message association table.
		 * @var TablePrivateMessage _objTablePrivateMessageAsUserIdFrom;
		 */
		private $_objTablePrivateMessageAsUserIdFrom;

		/**
		 * Private member variable that stores a reference to an array of TablePrivateMessageAsUserIdFrom objects
		 * (of type TablePrivateMessage[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_private_message association table.
		 * @var TablePrivateMessage[] _objTablePrivateMessageAsUserIdFromArray;
		 */
		private $_objTablePrivateMessageAsUserIdFromArray = array();

		/**
		 * Private member variable that stores a reference to a single TablePrivateMessageAsUserIdTo object
		 * (of type TablePrivateMessage), if this TableUserProject object was restored with
		 * an expansion on the table_private_message association table.
		 * @var TablePrivateMessage _objTablePrivateMessageAsUserIdTo;
		 */
		private $_objTablePrivateMessageAsUserIdTo;

		/**
		 * Private member variable that stores a reference to an array of TablePrivateMessageAsUserIdTo objects
		 * (of type TablePrivateMessage[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_private_message association table.
		 * @var TablePrivateMessage[] _objTablePrivateMessageAsUserIdToArray;
		 */
		private $_objTablePrivateMessageAsUserIdToArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectAsUser object
		 * (of type TableProject), if this TableUserProject object was restored with
		 * an expansion on the table_project association table.
		 * @var TableProject _objTableProjectAsUser;
		 */
		private $_objTableProjectAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectAsUser objects
		 * (of type TableProject[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project association table.
		 * @var TableProject[] _objTableProjectAsUserArray;
		 */
		private $_objTableProjectAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectAsWonUser object
		 * (of type TableProject), if this TableUserProject object was restored with
		 * an expansion on the table_project association table.
		 * @var TableProject _objTableProjectAsWonUser;
		 */
		private $_objTableProjectAsWonUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectAsWonUser objects
		 * (of type TableProject[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project association table.
		 * @var TableProject[] _objTableProjectAsWonUserArray;
		 */
		private $_objTableProjectAsWonUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectAttachmentAsUser object
		 * (of type TableProjectAttachment), if this TableUserProject object was restored with
		 * an expansion on the table_project_attachment association table.
		 * @var TableProjectAttachment _objTableProjectAttachmentAsUser;
		 */
		private $_objTableProjectAttachmentAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectAttachmentAsUser objects
		 * (of type TableProjectAttachment[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_attachment association table.
		 * @var TableProjectAttachment[] _objTableProjectAttachmentAsUserArray;
		 */
		private $_objTableProjectAttachmentAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectBidAsUser object
		 * (of type TableProjectBid), if this TableUserProject object was restored with
		 * an expansion on the table_project_bid association table.
		 * @var TableProjectBid _objTableProjectBidAsUser;
		 */
		private $_objTableProjectBidAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectBidAsUser objects
		 * (of type TableProjectBid[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_bid association table.
		 * @var TableProjectBid[] _objTableProjectBidAsUserArray;
		 */
		private $_objTableProjectBidAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectCancelAsUser object
		 * (of type TableProjectCancel), if this TableUserProject object was restored with
		 * an expansion on the table_project_cancel association table.
		 * @var TableProjectCancel _objTableProjectCancelAsUser;
		 */
		private $_objTableProjectCancelAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectCancelAsUser objects
		 * (of type TableProjectCancel[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_cancel association table.
		 * @var TableProjectCancel[] _objTableProjectCancelAsUserArray;
		 */
		private $_objTableProjectCancelAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectEditAsUser object
		 * (of type TableProjectEdit), if this TableUserProject object was restored with
		 * an expansion on the table_project_edit association table.
		 * @var TableProjectEdit _objTableProjectEditAsUser;
		 */
		private $_objTableProjectEditAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectEditAsUser objects
		 * (of type TableProjectEdit[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_edit association table.
		 * @var TableProjectEdit[] _objTableProjectEditAsUserArray;
		 */
		private $_objTableProjectEditAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectMessageAsUser object
		 * (of type TableProjectMessage), if this TableUserProject object was restored with
		 * an expansion on the table_project_message association table.
		 * @var TableProjectMessage _objTableProjectMessageAsUser;
		 */
		private $_objTableProjectMessageAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableProjectMessageAsUser objects
		 * (of type TableProjectMessage[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_message association table.
		 * @var TableProjectMessage[] _objTableProjectMessageAsUserArray;
		 */
		private $_objTableProjectMessageAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectRequestCancelAsBuyer object
		 * (of type TableProjectRequestCancel), if this TableUserProject object was restored with
		 * an expansion on the table_project_request_cancel association table.
		 * @var TableProjectRequestCancel _objTableProjectRequestCancelAsBuyer;
		 */
		private $_objTableProjectRequestCancelAsBuyer;

		/**
		 * Private member variable that stores a reference to an array of TableProjectRequestCancelAsBuyer objects
		 * (of type TableProjectRequestCancel[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_request_cancel association table.
		 * @var TableProjectRequestCancel[] _objTableProjectRequestCancelAsBuyerArray;
		 */
		private $_objTableProjectRequestCancelAsBuyerArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectRequestCancelAsProvider object
		 * (of type TableProjectRequestCancel), if this TableUserProject object was restored with
		 * an expansion on the table_project_request_cancel association table.
		 * @var TableProjectRequestCancel _objTableProjectRequestCancelAsProvider;
		 */
		private $_objTableProjectRequestCancelAsProvider;

		/**
		 * Private member variable that stores a reference to an array of TableProjectRequestCancelAsProvider objects
		 * (of type TableProjectRequestCancel[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_request_cancel association table.
		 * @var TableProjectRequestCancel[] _objTableProjectRequestCancelAsProviderArray;
		 */
		private $_objTableProjectRequestCancelAsProviderArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectRequestCompleteAsBuyer object
		 * (of type TableProjectRequestComplete), if this TableUserProject object was restored with
		 * an expansion on the table_project_request_complete association table.
		 * @var TableProjectRequestComplete _objTableProjectRequestCompleteAsBuyer;
		 */
		private $_objTableProjectRequestCompleteAsBuyer;

		/**
		 * Private member variable that stores a reference to an array of TableProjectRequestCompleteAsBuyer objects
		 * (of type TableProjectRequestComplete[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_request_complete association table.
		 * @var TableProjectRequestComplete[] _objTableProjectRequestCompleteAsBuyerArray;
		 */
		private $_objTableProjectRequestCompleteAsBuyerArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectRequestCompleteAsProvider object
		 * (of type TableProjectRequestComplete), if this TableUserProject object was restored with
		 * an expansion on the table_project_request_complete association table.
		 * @var TableProjectRequestComplete _objTableProjectRequestCompleteAsProvider;
		 */
		private $_objTableProjectRequestCompleteAsProvider;

		/**
		 * Private member variable that stores a reference to an array of TableProjectRequestCompleteAsProvider objects
		 * (of type TableProjectRequestComplete[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_request_complete association table.
		 * @var TableProjectRequestComplete[] _objTableProjectRequestCompleteAsProviderArray;
		 */
		private $_objTableProjectRequestCompleteAsProviderArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectWonAsBuyer object
		 * (of type TableProjectWon), if this TableUserProject object was restored with
		 * an expansion on the table_project_won association table.
		 * @var TableProjectWon _objTableProjectWonAsBuyer;
		 */
		private $_objTableProjectWonAsBuyer;

		/**
		 * Private member variable that stores a reference to an array of TableProjectWonAsBuyer objects
		 * (of type TableProjectWon[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_won association table.
		 * @var TableProjectWon[] _objTableProjectWonAsBuyerArray;
		 */
		private $_objTableProjectWonAsBuyerArray = array();

		/**
		 * Private member variable that stores a reference to a single TableProjectWonAsProvider object
		 * (of type TableProjectWon), if this TableUserProject object was restored with
		 * an expansion on the table_project_won association table.
		 * @var TableProjectWon _objTableProjectWonAsProvider;
		 */
		private $_objTableProjectWonAsProvider;

		/**
		 * Private member variable that stores a reference to an array of TableProjectWonAsProvider objects
		 * (of type TableProjectWon[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_project_won association table.
		 * @var TableProjectWon[] _objTableProjectWonAsProviderArray;
		 */
		private $_objTableProjectWonAsProviderArray = array();

		/**
		 * Private member variable that stores a reference to a single TableTransactionAsUser object
		 * (of type TableTransaction), if this TableUserProject object was restored with
		 * an expansion on the table_transaction association table.
		 * @var TableTransaction _objTableTransactionAsUser;
		 */
		private $_objTableTransactionAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableTransactionAsUser objects
		 * (of type TableTransaction[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_transaction association table.
		 * @var TableTransaction[] _objTableTransactionAsUserArray;
		 */
		private $_objTableTransactionAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableUserAddressAsUser object
		 * (of type TableUserAddress), if this TableUserProject object was restored with
		 * an expansion on the table_user_address association table.
		 * @var TableUserAddress _objTableUserAddressAsUser;
		 */
		private $_objTableUserAddressAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableUserAddressAsUser objects
		 * (of type TableUserAddress[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_user_address association table.
		 * @var TableUserAddress[] _objTableUserAddressAsUserArray;
		 */
		private $_objTableUserAddressAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableUserItemAsUser object
		 * (of type TableUserItem), if this TableUserProject object was restored with
		 * an expansion on the table_user_item association table.
		 * @var TableUserItem _objTableUserItemAsUser;
		 */
		private $_objTableUserItemAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableUserItemAsUser objects
		 * (of type TableUserItem[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_user_item association table.
		 * @var TableUserItem[] _objTableUserItemAsUserArray;
		 */
		private $_objTableUserItemAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableUserProfileAsUser object
		 * (of type TableUserProfile), if this TableUserProject object was restored with
		 * an expansion on the table_user_profile association table.
		 * @var TableUserProfile _objTableUserProfileAsUser;
		 */
		private $_objTableUserProfileAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableUserProfileAsUser objects
		 * (of type TableUserProfile[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_user_profile association table.
		 * @var TableUserProfile[] _objTableUserProfileAsUserArray;
		 */
		private $_objTableUserProfileAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableUserStatAsUser object
		 * (of type TableUserStat), if this TableUserProject object was restored with
		 * an expansion on the table_user_stat association table.
		 * @var TableUserStat _objTableUserStatAsUser;
		 */
		private $_objTableUserStatAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableUserStatAsUser objects
		 * (of type TableUserStat[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_user_stat association table.
		 * @var TableUserStat[] _objTableUserStatAsUserArray;
		 */
		private $_objTableUserStatAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableViolationReportAsUser object
		 * (of type TableViolationReport), if this TableUserProject object was restored with
		 * an expansion on the table_violation_report association table.
		 * @var TableViolationReport _objTableViolationReportAsUser;
		 */
		private $_objTableViolationReportAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableViolationReportAsUser objects
		 * (of type TableViolationReport[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_violation_report association table.
		 * @var TableViolationReport[] _objTableViolationReportAsUserArray;
		 */
		private $_objTableViolationReportAsUserArray = array();

		/**
		 * Private member variable that stores a reference to a single TableWatchListAsUser object
		 * (of type TableWatchList), if this TableUserProject object was restored with
		 * an expansion on the table_watch_list association table.
		 * @var TableWatchList _objTableWatchListAsUser;
		 */
		private $_objTableWatchListAsUser;

		/**
		 * Private member variable that stores a reference to an array of TableWatchListAsUser objects
		 * (of type TableWatchList[]), if this TableUserProject object was restored with
		 * an ExpandAsArray on the table_watch_list association table.
		 * @var TableWatchList[] _objTableWatchListAsUserArray;
		 */
		private $_objTableWatchListAsUserArray = array();

		/**
		 * Protected array of virtual attributes for this object (e.g. extra/other calculated and/or non-object bound
		 * columns from the run-time database query result for this object).  Used by InstantiateDbRow and
		 * GetVirtualAttribute.
		 * @var string[] $__strVirtualAttributeArray
		 */
		protected $__strVirtualAttributeArray = array();

		/**
		 * Protected internal member variable that specifies whether or not this object is Restored from the database.
		 * Used by Save() to determine if Save() should perform a db UPDATE or INSERT.
		 * @var bool __blnRestored;
		 */
		protected $__blnRestored;




		///////////////////////////////
		// PROTECTED MEMBER OBJECTS
		///////////////////////////////





		///////////////////////////////
		// CLASS-WIDE LOAD AND COUNT METHODS
		///////////////////////////////

		/**
		 * Static method to retrieve the Database object that owns this class.
		 * @return QDatabaseBase reference to the Database object that can query this class
		 */
		public static function GetDatabase() {
			return QApplication::$Database[1];
		}

		/**
		 * Load a TableUserProject from PK Info
		 * @param integer $intId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject
		 */
		public static function Load($intId, $objOptionalClauses = null) {
			// Use QuerySingle to Perform the Query
			return TableUserProject::QuerySingle(
				QQ::AndCondition(
					QQ::Equal(QQN::TableUserProject()->Id, $intId)
				),
				$objOptionalClauses
			);
		}

		/**
		 * Load all TableUserProjects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		 */
		public static function LoadAll($objOptionalClauses = null) {
			if (func_num_args() > 1) {
				throw new QCallerException("LoadAll must be called with an array of optional clauses as a single argument");
			}
			// Call TableUserProject::QueryArray to perform the LoadAll query
			try {
				return TableUserProject::QueryArray(QQ::All(), $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count all TableUserProjects
		 * @return int
		 */
		public static function CountAll() {
			// Call TableUserProject::QueryCount to perform the CountAll query
			return TableUserProject::QueryCount(QQ::All());
		}




		///////////////////////////////
		// QCUBED QUERY-RELATED METHODS
		///////////////////////////////

		/**
		 * Internally called method to assist with calling Qcubed Query for this class
		 * on load methods.
		 * @param QQueryBuilder &$objQueryBuilder the QueryBuilder object that will be created
		 * @param QQCondition $objConditions any conditions on the query, itself
		 * @param QQClause[] $objOptionalClausees additional optional QQClause object or array of QQClause objects for this query
		 * @param mixed[] $mixParameterArray a array of name-value pairs to perform PrepareStatement with (sending in null will skip the PrepareStatement step)
		 * @param boolean $blnCountOnly only select a rowcount
		 * @return string the query statement
		 */
		protected static function BuildQueryStatement(&$objQueryBuilder, QQCondition $objConditions, $objOptionalClauses, $mixParameterArray, $blnCountOnly) {
			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Create/Build out the QueryBuilder object with TableUserProject-specific SELET and FROM fields
			$objQueryBuilder = new QQueryBuilder($objDatabase, 'table_user_project');
			TableUserProject::GetSelectFields($objQueryBuilder);
			$objQueryBuilder->AddFromItem('table_user_project');

			// Set "CountOnly" option (if applicable)
			if ($blnCountOnly)
				$objQueryBuilder->SetCountOnlyFlag();

			// Apply Any Conditions
			if ($objConditions)
				try {
					$objConditions->UpdateQueryBuilder($objQueryBuilder);
				} catch (QCallerException $objExc) {
					$objExc->IncrementOffset();
					throw $objExc;
				}

			// Iterate through all the Optional Clauses (if any) and perform accordingly
			if ($objOptionalClauses) {
				if ($objOptionalClauses instanceof QQClause)
					$objOptionalClauses->UpdateQueryBuilder($objQueryBuilder);
				else if (is_array($objOptionalClauses))
					foreach ($objOptionalClauses as $objClause)
						$objClause->UpdateQueryBuilder($objQueryBuilder);
				else
					throw new QCallerException('Optional Clauses must be a QQClause object or an array of QQClause objects');
			}

			// Get the SQL Statement
			$strQuery = $objQueryBuilder->GetStatement();

			// Prepare the Statement with the Query Parameters (if applicable)
			if ($mixParameterArray) {
				if (is_array($mixParameterArray)) {
					if (count($mixParameterArray))
						$strQuery = $objDatabase->PrepareStatement($strQuery, $mixParameterArray);

					// Ensure that there are no other Unresolved Named Parameters
					if (strpos($strQuery, chr(QQNamedValue::DelimiterCode) . '{') !== false)
						throw new QCallerException('Unresolved named parameters in the query');
				} else
					throw new QCallerException('Parameter Array must be an array of name-value parameter pairs');
			}

			// Return the Objects
			return $strQuery;
		}

		/**
		 * Static Qcubed Query method to query for a single TableUserProject object.
		 * Uses BuildQueryStatment to perform most of the work.
		 * @param QQCondition $objConditions any conditions on the query, itself
		 * @param QQClause[] $objOptionalClausees additional optional QQClause objects for this query
		 * @param mixed[] $mixParameterArray a array of name-value pairs to perform PrepareStatement with
		 * @return TableUserProject the queried object
		 */
		public static function QuerySingle(QQCondition $objConditions, $objOptionalClauses = null, $mixParameterArray = null) {
			// Get the Query Statement
			try {
				$strQuery = TableUserProject::BuildQueryStatement($objQueryBuilder, $objConditions, $objOptionalClauses, $mixParameterArray, false);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
			
			// Perform the Query, Get the First Row, and Instantiate a new TableUserProject object
			$objDbResult = $objQueryBuilder->Database->Query($strQuery);
			
			// Do we have to expand anything?
			if ($objQueryBuilder->ExpandAsArrayNodes) {
				$objToReturn = array();
				while ($objDbRow = $objDbResult->GetNextRow()) {
					$objItem = TableUserProject::InstantiateDbRow($objDbRow, null, $objQueryBuilder->ExpandAsArrayNodes, $objToReturn, $objQueryBuilder->ColumnAliasArray);
					if ($objItem)
						$objToReturn[] = $objItem;					
				}			
				// Since we only want the object to return, lets return the object and not the array.
				return $objToReturn[0];
			} else {
				// No expands just return the first row
				$objToReturn = null;
				while ($objDbRow = $objDbResult->GetNextRow())
					$objToReturn = TableUserProject::InstantiateDbRow($objDbRow, null, null, null, $objQueryBuilder->ColumnAliasArray);
			}
			
			return $objToReturn;
		}

		/**
		 * Static Qcubed Query method to query for an array of TableUserProject objects.
		 * Uses BuildQueryStatment to perform most of the work.
		 * @param QQCondition $objConditions any conditions on the query, itself
		 * @param QQClause[] $objOptionalClausees additional optional QQClause objects for this query
		 * @param mixed[] $mixParameterArray a array of name-value pairs to perform PrepareStatement with
		 * @return TableUserProject[] the queried objects as an array
		 */
		public static function QueryArray(QQCondition $objConditions, $objOptionalClauses = null, $mixParameterArray = null) {
			// Get the Query Statement
			try {
				$strQuery = TableUserProject::BuildQueryStatement($objQueryBuilder, $objConditions, $objOptionalClauses, $mixParameterArray, false);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}

			// Perform the Query and Instantiate the Array Result
			$objDbResult = $objQueryBuilder->Database->Query($strQuery);
			return TableUserProject::InstantiateDbResult($objDbResult, $objQueryBuilder->ExpandAsArrayNodes, $objQueryBuilder->ColumnAliasArray);
		}

		/**
		 * Static Qcubed Query method to query for a count of TableUserProject objects.
		 * Uses BuildQueryStatment to perform most of the work.
		 * @param QQCondition $objConditions any conditions on the query, itself
		 * @param QQClause[] $objOptionalClausees additional optional QQClause objects for this query
		 * @param mixed[] $mixParameterArray a array of name-value pairs to perform PrepareStatement with
		 * @return integer the count of queried objects as an integer
		 */
		public static function QueryCount(QQCondition $objConditions, $objOptionalClauses = null, $mixParameterArray = null) {
			// Get the Query Statement
			try {
				$strQuery = TableUserProject::BuildQueryStatement($objQueryBuilder, $objConditions, $objOptionalClauses, $mixParameterArray, true);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}

			// Perform the Query and return the row_count
			$objDbResult = $objQueryBuilder->Database->Query($strQuery);

			// Figure out if the query is using GroupBy
			$blnGrouped = false;

			if ($objOptionalClauses) foreach ($objOptionalClauses as $objClause) {
				if ($objClause instanceof QQGroupBy) {
					$blnGrouped = true;
					break;
				}
			}

			if ($blnGrouped)
				// Groups in this query - return the count of Groups (which is the count of all rows)
				return $objDbResult->CountRows();
			else {
				// No Groups - return the sql-calculated count(*) value
				$strDbRow = $objDbResult->FetchRow();
				return QType::Cast($strDbRow[0], QType::Integer);
			}
		}

		public static function QueryArrayCached(QQCondition $objConditions, $objOptionalClauses = null, $mixParameterArray = null, $blnForceUpdate = false) {
			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			$strQuery = TableUserProject::BuildQueryStatement($objQueryBuilder, $objConditions, $objOptionalClauses, $mixParameterArray, false);
			
			$objCache = new QCache('qquery/tableuserproject', $strQuery);
			$cacheData = $objCache->GetData();
			
			if (!$cacheData || $blnForceUpdate) {
				$objDbResult = $objQueryBuilder->Database->Query($strQuery);
				$arrResult = TableUserProject::InstantiateDbResult($objDbResult, $objQueryBuilder->ExpandAsArrayNodes, $objQueryBuilder->ColumnAliasArray);
				$objCache->SaveData(serialize($arrResult));
			} else {
				$arrResult = unserialize($cacheData);
			}
			
			return $arrResult;
		}

		/**
		 * Updates a QQueryBuilder with the SELECT fields for this TableUserProject
		 * @param QQueryBuilder $objBuilder the Query Builder object to update
		 * @param string $strPrefix optional prefix to add to the SELECT fields
		 */
		public static function GetSelectFields(QQueryBuilder $objBuilder, $strPrefix = null) {
			if ($strPrefix) {
				$strTableName = $strPrefix;
				$strAliasPrefix = $strPrefix . '__';
			} else {
				$strTableName = 'table_user_project';
				$strAliasPrefix = '';
			}

			$objBuilder->AddSelectItem($strTableName, 'id', $strAliasPrefix . 'id');
			$objBuilder->AddSelectItem($strTableName, 'category_id', $strAliasPrefix . 'category_id');
			$objBuilder->AddSelectItem($strTableName, 'subcategory_id', $strAliasPrefix . 'subcategory_id');
			$objBuilder->AddSelectItem($strTableName, 'user_name', $strAliasPrefix . 'user_name');
			$objBuilder->AddSelectItem($strTableName, 'password', $strAliasPrefix . 'password');
			$objBuilder->AddSelectItem($strTableName, 'firstname', $strAliasPrefix . 'firstname');
			$objBuilder->AddSelectItem($strTableName, 'lastname', $strAliasPrefix . 'lastname');
			$objBuilder->AddSelectItem($strTableName, 'companyname', $strAliasPrefix . 'companyname');
			$objBuilder->AddSelectItem($strTableName, 'mail', $strAliasPrefix . 'mail');
			$objBuilder->AddSelectItem($strTableName, 'mail2', $strAliasPrefix . 'mail2');
			$objBuilder->AddSelectItem($strTableName, 'ip', $strAliasPrefix . 'ip');
			$objBuilder->AddSelectItem($strTableName, 'country', $strAliasPrefix . 'country');
			$objBuilder->AddSelectItem($strTableName, 'city', $strAliasPrefix . 'city');
			$objBuilder->AddSelectItem($strTableName, 'address1', $strAliasPrefix . 'address1');
			$objBuilder->AddSelectItem($strTableName, 'address2', $strAliasPrefix . 'address2');
			$objBuilder->AddSelectItem($strTableName, 'postal_code', $strAliasPrefix . 'postal_code');
			$objBuilder->AddSelectItem($strTableName, 'phone', $strAliasPrefix . 'phone');
			$objBuilder->AddSelectItem($strTableName, 'fax', $strAliasPrefix . 'fax');
			$objBuilder->AddSelectItem($strTableName, 'login_date', $strAliasPrefix . 'login_date');
			$objBuilder->AddSelectItem($strTableName, 'logout_date', $strAliasPrefix . 'logout_date');
			$objBuilder->AddSelectItem($strTableName, 'timeup_date', $strAliasPrefix . 'timeup_date');
			$objBuilder->AddSelectItem($strTableName, 'user_type', $strAliasPrefix . 'user_type');
			$objBuilder->AddSelectItem($strTableName, 'user_level', $strAliasPrefix . 'user_level');
			$objBuilder->AddSelectItem($strTableName, 'booth_count', $strAliasPrefix . 'booth_count');
			$objBuilder->AddSelectItem($strTableName, 'portfolio_count', $strAliasPrefix . 'portfolio_count');
			$objBuilder->AddSelectItem($strTableName, 'point_balance', $strAliasPrefix . 'point_balance');
			$objBuilder->AddSelectItem($strTableName, 'point_in_total', $strAliasPrefix . 'point_in_total');
			$objBuilder->AddSelectItem($strTableName, 'point_out_total', $strAliasPrefix . 'point_out_total');
			$objBuilder->AddSelectItem($strTableName, 'point_charged_total', $strAliasPrefix . 'point_charged_total');
			$objBuilder->AddSelectItem($strTableName, 'language_id', $strAliasPrefix . 'language_id');
			$objBuilder->AddSelectItem($strTableName, 'sendmail_news', $strAliasPrefix . 'sendmail_news');
			$objBuilder->AddSelectItem($strTableName, 'sendmail_by_keyword_in_new_project', $strAliasPrefix . 'sendmail_by_keyword_in_new_project');
			$objBuilder->AddSelectItem($strTableName, 'sendmail_by_new_bid', $strAliasPrefix . 'sendmail_by_new_bid');
			$objBuilder->AddSelectItem($strTableName, 'keyword', $strAliasPrefix . 'keyword');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer', $strAliasPrefix . 'rate_as_buyer');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider', $strAliasPrefix . 'rate_as_provider');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_6month', $strAliasPrefix . 'rate_as_buyer_6month');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_6month', $strAliasPrefix . 'rate_as_provider_6month');
			$objBuilder->AddSelectItem($strTableName, 'authorized', $strAliasPrefix . 'authorized');
			$objBuilder->AddSelectItem($strTableName, 'authorization_code', $strAliasPrefix . 'authorization_code');
			$objBuilder->AddSelectItem($strTableName, 'authorized_date', $strAliasPrefix . 'authorized_date');
			$objBuilder->AddSelectItem($strTableName, 'active', $strAliasPrefix . 'active');
			$objBuilder->AddSelectItem($strTableName, 'suspended', $strAliasPrefix . 'suspended');
			$objBuilder->AddSelectItem($strTableName, 'affiliator_id', $strAliasPrefix . 'affiliator_id');
			$objBuilder->AddSelectItem($strTableName, 'affliator_code', $strAliasPrefix . 'affliator_code');
			$objBuilder->AddSelectItem($strTableName, 'firstname_kana', $strAliasPrefix . 'firstname_kana');
			$objBuilder->AddSelectItem($strTableName, 'lastname_kana', $strAliasPrefix . 'lastname_kana');
			$objBuilder->AddSelectItem($strTableName, 'department', $strAliasPrefix . 'department');
			$objBuilder->AddSelectItem($strTableName, 'register_date', $strAliasPrefix . 'register_date');
			$objBuilder->AddSelectItem($strTableName, 'percentage_will_charge', $strAliasPrefix . 'percentage_will_charge');
			$objBuilder->AddSelectItem($strTableName, 'last_access_date', $strAliasPrefix . 'last_access_date');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_1', $strAliasPrefix . 'rate_as_buyer_1');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_2', $strAliasPrefix . 'rate_as_buyer_2');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_3', $strAliasPrefix . 'rate_as_buyer_3');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_4', $strAliasPrefix . 'rate_as_buyer_4');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_5', $strAliasPrefix . 'rate_as_buyer_5');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_buyer_6', $strAliasPrefix . 'rate_as_buyer_6');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_1', $strAliasPrefix . 'rate_as_provider_1');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_2', $strAliasPrefix . 'rate_as_provider_2');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_3', $strAliasPrefix . 'rate_as_provider_3');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_4', $strAliasPrefix . 'rate_as_provider_4');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_5', $strAliasPrefix . 'rate_as_provider_5');
			$objBuilder->AddSelectItem($strTableName, 'rate_as_provider_6', $strAliasPrefix . 'rate_as_provider_6');
		}



		///////////////////////////////
		// INSTANTIATION-RELATED METHODS
		///////////////////////////////

		/**
		 * Instantiate a TableUserProject from a Database Row.
		 * Takes in an optional strAliasPrefix, used in case another Object::InstantiateDbRow
		 * is calling this TableUserProject::InstantiateDbRow in order to perform
		 * early binding on referenced objects.
		 * @param DatabaseRowBase $objDbRow
		 * @param string $strAliasPrefix
		 * @param string $strExpandAsArrayNodes
		 * @param QBaseClass $arrPreviousItem
		 * @param string[] $strColumnAliasArray
		 * @return TableUserProject
		*/
		public static function InstantiateDbRow($objDbRow, $strAliasPrefix = null, $strExpandAsArrayNodes = null, $arrPreviousItems = null, $strColumnAliasArray = array()) {
			// If blank row, return null
			if (!$objDbRow) {
				return null;
			}
			// See if we're doing an array expansion on the previous item
			$strAlias = $strAliasPrefix . 'id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (($strExpandAsArrayNodes) && is_array($arrPreviousItems) && count($arrPreviousItems)) {
				foreach ($arrPreviousItems as $objPreviousItem) {            
					if ($objPreviousItem->intId == $objDbRow->GetColumn($strAliasName, 'Integer')) {        
						// We are.  Now, prepare to check for ExpandAsArray clauses
						$blnExpandedViaArray = false;
						if (!$strAliasPrefix)
							$strAliasPrefix = 'table_user_project__';


						// Expanding reverse references: TableBankAsUser
						$strAlias = $strAliasPrefix . 'tablebankasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableBankAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableBankAsUserArray;
								$objChildItem = TableBank::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableBankAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableBankAsUserArray[] = TableBank::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableBankRequestInAsUser
						$strAlias = $strAliasPrefix . 'tablebankrequestinasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableBankRequestInAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableBankRequestInAsUserArray;
								$objChildItem = TableBankRequestIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestinasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableBankRequestInAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableBankRequestInAsUserArray[] = TableBankRequestIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestinasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableBankRequestOutAsUser
						$strAlias = $strAliasPrefix . 'tablebankrequestoutasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableBankRequestOutAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableBankRequestOutAsUserArray;
								$objChildItem = TableBankRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestoutasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableBankRequestOutAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableBankRequestOutAsUserArray[] = TableBankRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableBoothAsUser
						$strAlias = $strAliasPrefix . 'tableboothasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableBoothAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableBoothAsUserArray;
								$objChildItem = TableBooth::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableboothasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableBoothAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableBoothAsUserArray[] = TableBooth::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableboothasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableEscrowAsUserIdFrom
						$strAlias = $strAliasPrefix . 'tableescrowasuseridfrom__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableEscrowAsUserIdFromArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableEscrowAsUserIdFromArray;
								$objChildItem = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridfrom__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableEscrowAsUserIdFromArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableEscrowAsUserIdFromArray[] = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridfrom__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableEscrowAsUserIdTo
						$strAlias = $strAliasPrefix . 'tableescrowasuseridto__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableEscrowAsUserIdToArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableEscrowAsUserIdToArray;
								$objChildItem = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridto__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableEscrowAsUserIdToArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableEscrowAsUserIdToArray[] = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridto__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableFeedbackAsUser
						$strAlias = $strAliasPrefix . 'tablefeedbackasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableFeedbackAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableFeedbackAsUserArray;
								$objChildItem = TableFeedback::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablefeedbackasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableFeedbackAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableFeedbackAsUserArray[] = TableFeedback::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablefeedbackasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableItemGetAsUser
						$strAlias = $strAliasPrefix . 'tableitemgetasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableItemGetAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableItemGetAsUserArray;
								$objChildItem = TableItemGet::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableitemgetasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableItemGetAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableItemGetAsUserArray[] = TableItemGet::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableitemgetasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePaypalRequestOutAsUser
						$strAlias = $strAliasPrefix . 'tablepaypalrequestoutasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePaypalRequestOutAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePaypalRequestOutAsUserArray;
								$objChildItem = TablePaypalRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepaypalrequestoutasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePaypalRequestOutAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePaypalRequestOutAsUserArray[] = TablePaypalRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepaypalrequestoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePointChargedAsUser
						$strAlias = $strAliasPrefix . 'tablepointchargedasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePointChargedAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePointChargedAsUserArray;
								$objChildItem = TablePointCharged::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointchargedasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePointChargedAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePointChargedAsUserArray[] = TablePointCharged::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointchargedasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePointInAsUser
						$strAlias = $strAliasPrefix . 'tablepointinasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePointInAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePointInAsUserArray;
								$objChildItem = TablePointIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointinasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePointInAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePointInAsUserArray[] = TablePointIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointinasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePointOutAsUser
						$strAlias = $strAliasPrefix . 'tablepointoutasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePointOutAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePointOutAsUserArray;
								$objChildItem = TablePointOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointoutasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePointOutAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePointOutAsUserArray[] = TablePointOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePortfolioAsUser
						$strAlias = $strAliasPrefix . 'tableportfolioasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePortfolioAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePortfolioAsUserArray;
								$objChildItem = TablePortfolio::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableportfolioasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePortfolioAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePortfolioAsUserArray[] = TablePortfolio::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableportfolioasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePrivateMessageAsUserIdFrom
						$strAlias = $strAliasPrefix . 'tableprivatemessageasuseridfrom__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePrivateMessageAsUserIdFromArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePrivateMessageAsUserIdFromArray;
								$objChildItem = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridfrom__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePrivateMessageAsUserIdFromArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePrivateMessageAsUserIdFromArray[] = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridfrom__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TablePrivateMessageAsUserIdTo
						$strAlias = $strAliasPrefix . 'tableprivatemessageasuseridto__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTablePrivateMessageAsUserIdToArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTablePrivateMessageAsUserIdToArray;
								$objChildItem = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridto__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTablePrivateMessageAsUserIdToArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTablePrivateMessageAsUserIdToArray[] = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridto__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectAsUser
						$strAlias = $strAliasPrefix . 'tableprojectasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectAsUserArray;
								$objChildItem = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectAsUserArray[] = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectAsWonUser
						$strAlias = $strAliasPrefix . 'tableprojectaswonuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectAsWonUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectAsWonUserArray;
								$objChildItem = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectaswonuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectAsWonUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectAsWonUserArray[] = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectaswonuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectAttachmentAsUser
						$strAlias = $strAliasPrefix . 'tableprojectattachmentasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectAttachmentAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectAttachmentAsUserArray;
								$objChildItem = TableProjectAttachment::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectattachmentasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectAttachmentAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectAttachmentAsUserArray[] = TableProjectAttachment::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectattachmentasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectBidAsUser
						$strAlias = $strAliasPrefix . 'tableprojectbidasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectBidAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectBidAsUserArray;
								$objChildItem = TableProjectBid::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectbidasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectBidAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectBidAsUserArray[] = TableProjectBid::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectbidasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectCancelAsUser
						$strAlias = $strAliasPrefix . 'tableprojectcancelasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectCancelAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectCancelAsUserArray;
								$objChildItem = TableProjectCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectcancelasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectCancelAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectCancelAsUserArray[] = TableProjectCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectcancelasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectEditAsUser
						$strAlias = $strAliasPrefix . 'tableprojecteditasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectEditAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectEditAsUserArray;
								$objChildItem = TableProjectEdit::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojecteditasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectEditAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectEditAsUserArray[] = TableProjectEdit::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojecteditasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectMessageAsUser
						$strAlias = $strAliasPrefix . 'tableprojectmessageasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectMessageAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectMessageAsUserArray;
								$objChildItem = TableProjectMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectmessageasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectMessageAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectMessageAsUserArray[] = TableProjectMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectmessageasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectRequestCancelAsBuyer
						$strAlias = $strAliasPrefix . 'tableprojectrequestcancelasbuyer__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectRequestCancelAsBuyerArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectRequestCancelAsBuyerArray;
								$objChildItem = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasbuyer__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectRequestCancelAsBuyerArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectRequestCancelAsBuyerArray[] = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectRequestCancelAsProvider
						$strAlias = $strAliasPrefix . 'tableprojectrequestcancelasprovider__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectRequestCancelAsProviderArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectRequestCancelAsProviderArray;
								$objChildItem = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasprovider__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectRequestCancelAsProviderArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectRequestCancelAsProviderArray[] = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectRequestCompleteAsBuyer
						$strAlias = $strAliasPrefix . 'tableprojectrequestcompleteasbuyer__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectRequestCompleteAsBuyerArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectRequestCompleteAsBuyerArray;
								$objChildItem = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasbuyer__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectRequestCompleteAsBuyerArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectRequestCompleteAsBuyerArray[] = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectRequestCompleteAsProvider
						$strAlias = $strAliasPrefix . 'tableprojectrequestcompleteasprovider__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectRequestCompleteAsProviderArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectRequestCompleteAsProviderArray;
								$objChildItem = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasprovider__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectRequestCompleteAsProviderArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectRequestCompleteAsProviderArray[] = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectWonAsBuyer
						$strAlias = $strAliasPrefix . 'tableprojectwonasbuyer__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectWonAsBuyerArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectWonAsBuyerArray;
								$objChildItem = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasbuyer__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectWonAsBuyerArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectWonAsBuyerArray[] = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableProjectWonAsProvider
						$strAlias = $strAliasPrefix . 'tableprojectwonasprovider__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableProjectWonAsProviderArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableProjectWonAsProviderArray;
								$objChildItem = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasprovider__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableProjectWonAsProviderArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableProjectWonAsProviderArray[] = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableTransactionAsUser
						$strAlias = $strAliasPrefix . 'tabletransactionasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableTransactionAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableTransactionAsUserArray;
								$objChildItem = TableTransaction::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tabletransactionasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableTransactionAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableTransactionAsUserArray[] = TableTransaction::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tabletransactionasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableUserAddressAsUser
						$strAlias = $strAliasPrefix . 'tableuseraddressasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableUserAddressAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableUserAddressAsUserArray;
								$objChildItem = TableUserAddress::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseraddressasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableUserAddressAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableUserAddressAsUserArray[] = TableUserAddress::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseraddressasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableUserItemAsUser
						$strAlias = $strAliasPrefix . 'tableuseritemasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableUserItemAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableUserItemAsUserArray;
								$objChildItem = TableUserItem::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseritemasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableUserItemAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableUserItemAsUserArray[] = TableUserItem::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseritemasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableUserProfileAsUser
						$strAlias = $strAliasPrefix . 'tableuserprofileasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableUserProfileAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableUserProfileAsUserArray;
								$objChildItem = TableUserProfile::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserprofileasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableUserProfileAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableUserProfileAsUserArray[] = TableUserProfile::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserprofileasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableUserStatAsUser
						$strAlias = $strAliasPrefix . 'tableuserstatasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableUserStatAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableUserStatAsUserArray;
								$objChildItem = TableUserStat::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserstatasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableUserStatAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableUserStatAsUserArray[] = TableUserStat::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserstatasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableViolationReportAsUser
						$strAlias = $strAliasPrefix . 'tableviolationreportasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableViolationReportAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableViolationReportAsUserArray;
								$objChildItem = TableViolationReport::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableviolationreportasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableViolationReportAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableViolationReportAsUserArray[] = TableViolationReport::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableviolationreportasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Expanding reverse references: TableWatchListAsUser
						$strAlias = $strAliasPrefix . 'tablewatchlistasuser__id';
						$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
						if ((array_key_exists($strAlias, $strExpandAsArrayNodes)) &&
							(!is_null($objDbRow->GetColumn($strAliasName)))) {
							if ($intPreviousChildItemCount = count($objPreviousItem->_objTableWatchListAsUserArray)) {
								$objPreviousChildItems = $objPreviousItem->_objTableWatchListAsUserArray;
								$objChildItem = TableWatchList::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablewatchlistasuser__', $strExpandAsArrayNodes, $objPreviousChildItems, $strColumnAliasArray);
								if ($objChildItem) {
									$objPreviousItem->_objTableWatchListAsUserArray[] = $objChildItem;
								}
							} else {
								$objPreviousItem->_objTableWatchListAsUserArray[] = TableWatchList::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablewatchlistasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
							}
							$blnExpandedViaArray = true;
						}

						// Either return false to signal array expansion, or check-to-reset the Alias prefix and move on
						if ($blnExpandedViaArray) {
							return false;
						} else if ($strAliasPrefix == 'table_user_project__') {
							$strAliasPrefix = null;
						}
					}
				}
			}

			// Create a new instance of the TableUserProject object
			$objToReturn = new TableUserProject();
			$objToReturn->__blnRestored = true;

			$strAliasName = array_key_exists($strAliasPrefix . 'id', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'id'] : $strAliasPrefix . 'id';
			$objToReturn->intId = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'category_id', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'category_id'] : $strAliasPrefix . 'category_id';
			$objToReturn->intCategoryId = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'subcategory_id', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'subcategory_id'] : $strAliasPrefix . 'subcategory_id';
			$objToReturn->intSubcategoryId = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'user_name', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'user_name'] : $strAliasPrefix . 'user_name';
			$objToReturn->strUserName = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'password', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'password'] : $strAliasPrefix . 'password';
			$objToReturn->strPassword = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'firstname', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'firstname'] : $strAliasPrefix . 'firstname';
			$objToReturn->strFirstname = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'lastname', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'lastname'] : $strAliasPrefix . 'lastname';
			$objToReturn->strLastname = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'companyname', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'companyname'] : $strAliasPrefix . 'companyname';
			$objToReturn->strCompanyname = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'mail', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'mail'] : $strAliasPrefix . 'mail';
			$objToReturn->strMail = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'mail2', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'mail2'] : $strAliasPrefix . 'mail2';
			$objToReturn->strMail2 = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'ip', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'ip'] : $strAliasPrefix . 'ip';
			$objToReturn->strIp = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'country', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'country'] : $strAliasPrefix . 'country';
			$objToReturn->strCountry = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'city', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'city'] : $strAliasPrefix . 'city';
			$objToReturn->strCity = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'address1', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'address1'] : $strAliasPrefix . 'address1';
			$objToReturn->strAddress1 = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'address2', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'address2'] : $strAliasPrefix . 'address2';
			$objToReturn->strAddress2 = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'postal_code', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'postal_code'] : $strAliasPrefix . 'postal_code';
			$objToReturn->strPostalCode = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'phone', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'phone'] : $strAliasPrefix . 'phone';
			$objToReturn->strPhone = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'fax', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'fax'] : $strAliasPrefix . 'fax';
			$objToReturn->strFax = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'login_date', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'login_date'] : $strAliasPrefix . 'login_date';
			$objToReturn->dttLoginDate = $objDbRow->GetColumn($strAliasName, 'DateTime');
			$strAliasName = array_key_exists($strAliasPrefix . 'logout_date', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'logout_date'] : $strAliasPrefix . 'logout_date';
			$objToReturn->dttLogoutDate = $objDbRow->GetColumn($strAliasName, 'DateTime');
			$strAliasName = array_key_exists($strAliasPrefix . 'timeup_date', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'timeup_date'] : $strAliasPrefix . 'timeup_date';
			$objToReturn->dttTimeupDate = $objDbRow->GetColumn($strAliasName, 'DateTime');
			$strAliasName = array_key_exists($strAliasPrefix . 'user_type', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'user_type'] : $strAliasPrefix . 'user_type';
			$objToReturn->intUserType = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'user_level', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'user_level'] : $strAliasPrefix . 'user_level';
			$objToReturn->intUserLevel = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'booth_count', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'booth_count'] : $strAliasPrefix . 'booth_count';
			$objToReturn->intBoothCount = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'portfolio_count', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'portfolio_count'] : $strAliasPrefix . 'portfolio_count';
			$objToReturn->intPortfolioCount = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'point_balance', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'point_balance'] : $strAliasPrefix . 'point_balance';
			$objToReturn->intPointBalance = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'point_in_total', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'point_in_total'] : $strAliasPrefix . 'point_in_total';
			$objToReturn->intPointInTotal = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'point_out_total', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'point_out_total'] : $strAliasPrefix . 'point_out_total';
			$objToReturn->intPointOutTotal = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'point_charged_total', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'point_charged_total'] : $strAliasPrefix . 'point_charged_total';
			$objToReturn->intPointChargedTotal = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'language_id', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'language_id'] : $strAliasPrefix . 'language_id';
			$objToReturn->intLanguageId = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'sendmail_news', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'sendmail_news'] : $strAliasPrefix . 'sendmail_news';
			$objToReturn->strSendmailNews = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'sendmail_by_keyword_in_new_project', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'sendmail_by_keyword_in_new_project'] : $strAliasPrefix . 'sendmail_by_keyword_in_new_project';
			$objToReturn->strSendmailByKeywordInNewProject = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'sendmail_by_new_bid', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'sendmail_by_new_bid'] : $strAliasPrefix . 'sendmail_by_new_bid';
			$objToReturn->strSendmailByNewBid = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'keyword', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'keyword'] : $strAliasPrefix . 'keyword';
			$objToReturn->strKeyword = $objDbRow->GetColumn($strAliasName, 'Blob');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer'] : $strAliasPrefix . 'rate_as_buyer';
			$objToReturn->fltRateAsBuyer = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider'] : $strAliasPrefix . 'rate_as_provider';
			$objToReturn->fltRateAsProvider = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_6month', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_6month'] : $strAliasPrefix . 'rate_as_buyer_6month';
			$objToReturn->fltRateAsBuyer6month = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_6month', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_6month'] : $strAliasPrefix . 'rate_as_provider_6month';
			$objToReturn->fltRateAsProvider6month = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'authorized', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'authorized'] : $strAliasPrefix . 'authorized';
			$objToReturn->strAuthorized = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'authorization_code', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'authorization_code'] : $strAliasPrefix . 'authorization_code';
			$objToReturn->strAuthorizationCode = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'authorized_date', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'authorized_date'] : $strAliasPrefix . 'authorized_date';
			$objToReturn->dttAuthorizedDate = $objDbRow->GetColumn($strAliasName, 'DateTime');
			$strAliasName = array_key_exists($strAliasPrefix . 'active', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'active'] : $strAliasPrefix . 'active';
			$objToReturn->strActive = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'suspended', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'suspended'] : $strAliasPrefix . 'suspended';
			$objToReturn->strSuspended = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'affiliator_id', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'affiliator_id'] : $strAliasPrefix . 'affiliator_id';
			$objToReturn->intAffiliatorId = $objDbRow->GetColumn($strAliasName, 'Integer');
			$strAliasName = array_key_exists($strAliasPrefix . 'affliator_code', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'affliator_code'] : $strAliasPrefix . 'affliator_code';
			$objToReturn->strAffliatorCode = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'firstname_kana', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'firstname_kana'] : $strAliasPrefix . 'firstname_kana';
			$objToReturn->strFirstnameKana = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'lastname_kana', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'lastname_kana'] : $strAliasPrefix . 'lastname_kana';
			$objToReturn->strLastnameKana = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'department', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'department'] : $strAliasPrefix . 'department';
			$objToReturn->strDepartment = $objDbRow->GetColumn($strAliasName, 'VarChar');
			$strAliasName = array_key_exists($strAliasPrefix . 'register_date', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'register_date'] : $strAliasPrefix . 'register_date';
			$objToReturn->dttRegisterDate = $objDbRow->GetColumn($strAliasName, 'DateTime');
			$strAliasName = array_key_exists($strAliasPrefix . 'percentage_will_charge', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'percentage_will_charge'] : $strAliasPrefix . 'percentage_will_charge';
			$objToReturn->fltPercentageWillCharge = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'last_access_date', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'last_access_date'] : $strAliasPrefix . 'last_access_date';
			$objToReturn->dttLastAccessDate = $objDbRow->GetColumn($strAliasName, 'DateTime');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_1', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_1'] : $strAliasPrefix . 'rate_as_buyer_1';
			$objToReturn->fltRateAsBuyer1 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_2', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_2'] : $strAliasPrefix . 'rate_as_buyer_2';
			$objToReturn->fltRateAsBuyer2 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_3', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_3'] : $strAliasPrefix . 'rate_as_buyer_3';
			$objToReturn->fltRateAsBuyer3 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_4', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_4'] : $strAliasPrefix . 'rate_as_buyer_4';
			$objToReturn->fltRateAsBuyer4 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_5', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_5'] : $strAliasPrefix . 'rate_as_buyer_5';
			$objToReturn->fltRateAsBuyer5 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_buyer_6', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_buyer_6'] : $strAliasPrefix . 'rate_as_buyer_6';
			$objToReturn->fltRateAsBuyer6 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_1', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_1'] : $strAliasPrefix . 'rate_as_provider_1';
			$objToReturn->fltRateAsProvider1 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_2', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_2'] : $strAliasPrefix . 'rate_as_provider_2';
			$objToReturn->fltRateAsProvider2 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_3', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_3'] : $strAliasPrefix . 'rate_as_provider_3';
			$objToReturn->fltRateAsProvider3 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_4', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_4'] : $strAliasPrefix . 'rate_as_provider_4';
			$objToReturn->fltRateAsProvider4 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_5', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_5'] : $strAliasPrefix . 'rate_as_provider_5';
			$objToReturn->fltRateAsProvider5 = $objDbRow->GetColumn($strAliasName, 'Float');
			$strAliasName = array_key_exists($strAliasPrefix . 'rate_as_provider_6', $strColumnAliasArray) ? $strColumnAliasArray[$strAliasPrefix . 'rate_as_provider_6'] : $strAliasPrefix . 'rate_as_provider_6';
			$objToReturn->fltRateAsProvider6 = $objDbRow->GetColumn($strAliasName, 'Float');

			if (isset($arrPreviousItems) && is_array($arrPreviousItems)) {
				foreach ($arrPreviousItems as $objPreviousItem) {
					if ($objToReturn->Id != $objPreviousItem->Id) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableBankAsUserArray, $objToReturn->_objTableBankAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableBankRequestInAsUserArray, $objToReturn->_objTableBankRequestInAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableBankRequestOutAsUserArray, $objToReturn->_objTableBankRequestOutAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableBoothAsUserArray, $objToReturn->_objTableBoothAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableEscrowAsUserIdFromArray, $objToReturn->_objTableEscrowAsUserIdFromArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableEscrowAsUserIdToArray, $objToReturn->_objTableEscrowAsUserIdToArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableFeedbackAsUserArray, $objToReturn->_objTableFeedbackAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableItemGetAsUserArray, $objToReturn->_objTableItemGetAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePaypalRequestOutAsUserArray, $objToReturn->_objTablePaypalRequestOutAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePointChargedAsUserArray, $objToReturn->_objTablePointChargedAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePointInAsUserArray, $objToReturn->_objTablePointInAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePointOutAsUserArray, $objToReturn->_objTablePointOutAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePortfolioAsUserArray, $objToReturn->_objTablePortfolioAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePrivateMessageAsUserIdFromArray, $objToReturn->_objTablePrivateMessageAsUserIdFromArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTablePrivateMessageAsUserIdToArray, $objToReturn->_objTablePrivateMessageAsUserIdToArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectAsUserArray, $objToReturn->_objTableProjectAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectAsWonUserArray, $objToReturn->_objTableProjectAsWonUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectAttachmentAsUserArray, $objToReturn->_objTableProjectAttachmentAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectBidAsUserArray, $objToReturn->_objTableProjectBidAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectCancelAsUserArray, $objToReturn->_objTableProjectCancelAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectEditAsUserArray, $objToReturn->_objTableProjectEditAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectMessageAsUserArray, $objToReturn->_objTableProjectMessageAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectRequestCancelAsBuyerArray, $objToReturn->_objTableProjectRequestCancelAsBuyerArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectRequestCancelAsProviderArray, $objToReturn->_objTableProjectRequestCancelAsProviderArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectRequestCompleteAsBuyerArray, $objToReturn->_objTableProjectRequestCompleteAsBuyerArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectRequestCompleteAsProviderArray, $objToReturn->_objTableProjectRequestCompleteAsProviderArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectWonAsBuyerArray, $objToReturn->_objTableProjectWonAsBuyerArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableProjectWonAsProviderArray, $objToReturn->_objTableProjectWonAsProviderArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableTransactionAsUserArray, $objToReturn->_objTableTransactionAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableUserAddressAsUserArray, $objToReturn->_objTableUserAddressAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableUserItemAsUserArray, $objToReturn->_objTableUserItemAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableUserProfileAsUserArray, $objToReturn->_objTableUserProfileAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableUserStatAsUserArray, $objToReturn->_objTableUserStatAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableViolationReportAsUserArray, $objToReturn->_objTableViolationReportAsUserArray) != null) {
						continue;
					}
					if (array_diff($objPreviousItem->_objTableWatchListAsUserArray, $objToReturn->_objTableWatchListAsUserArray) != null) {
						continue;
					}

					// complete match - all primary key columns are the same
					return null;
				}
			}

			// Instantiate Virtual Attributes
			foreach ($objDbRow->GetColumnNameArray() as $strColumnName => $mixValue) {
				$strVirtualPrefix = $strAliasPrefix . '__';
				$strVirtualPrefixLength = strlen($strVirtualPrefix);
				if (substr($strColumnName, 0, $strVirtualPrefixLength) == $strVirtualPrefix)
					$objToReturn->__strVirtualAttributeArray[substr($strColumnName, $strVirtualPrefixLength)] = $mixValue;
			}

			// Prepare to Check for Early/Virtual Binding
			if (!$strAliasPrefix)
				$strAliasPrefix = 'table_user_project__';




			// Check for TableBankAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablebankasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableBankAsUserArray[] = TableBank::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableBankAsUser = TableBank::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableBankRequestInAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablebankrequestinasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableBankRequestInAsUserArray[] = TableBankRequestIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestinasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableBankRequestInAsUser = TableBankRequestIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestinasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableBankRequestOutAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablebankrequestoutasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableBankRequestOutAsUserArray[] = TableBankRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableBankRequestOutAsUser = TableBankRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablebankrequestoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableBoothAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableboothasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableBoothAsUserArray[] = TableBooth::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableboothasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableBoothAsUser = TableBooth::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableboothasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableEscrowAsUserIdFrom Virtual Binding
			$strAlias = $strAliasPrefix . 'tableescrowasuseridfrom__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableEscrowAsUserIdFromArray[] = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridfrom__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableEscrowAsUserIdFrom = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridfrom__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableEscrowAsUserIdTo Virtual Binding
			$strAlias = $strAliasPrefix . 'tableescrowasuseridto__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableEscrowAsUserIdToArray[] = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridto__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableEscrowAsUserIdTo = TableEscrow::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableescrowasuseridto__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableFeedbackAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablefeedbackasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableFeedbackAsUserArray[] = TableFeedback::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablefeedbackasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableFeedbackAsUser = TableFeedback::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablefeedbackasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableItemGetAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableitemgetasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableItemGetAsUserArray[] = TableItemGet::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableitemgetasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableItemGetAsUser = TableItemGet::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableitemgetasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePaypalRequestOutAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablepaypalrequestoutasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePaypalRequestOutAsUserArray[] = TablePaypalRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepaypalrequestoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePaypalRequestOutAsUser = TablePaypalRequestOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepaypalrequestoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePointChargedAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablepointchargedasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePointChargedAsUserArray[] = TablePointCharged::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointchargedasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePointChargedAsUser = TablePointCharged::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointchargedasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePointInAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablepointinasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePointInAsUserArray[] = TablePointIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointinasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePointInAsUser = TablePointIn::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointinasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePointOutAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablepointoutasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePointOutAsUserArray[] = TablePointOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePointOutAsUser = TablePointOut::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablepointoutasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePortfolioAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableportfolioasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePortfolioAsUserArray[] = TablePortfolio::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableportfolioasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePortfolioAsUser = TablePortfolio::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableportfolioasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePrivateMessageAsUserIdFrom Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprivatemessageasuseridfrom__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePrivateMessageAsUserIdFromArray[] = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridfrom__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePrivateMessageAsUserIdFrom = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridfrom__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TablePrivateMessageAsUserIdTo Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprivatemessageasuseridto__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTablePrivateMessageAsUserIdToArray[] = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridto__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTablePrivateMessageAsUserIdTo = TablePrivateMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprivatemessageasuseridto__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectAsUserArray[] = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectAsUser = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectAsWonUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectaswonuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectAsWonUserArray[] = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectaswonuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectAsWonUser = TableProject::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectaswonuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectAttachmentAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectattachmentasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectAttachmentAsUserArray[] = TableProjectAttachment::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectattachmentasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectAttachmentAsUser = TableProjectAttachment::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectattachmentasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectBidAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectbidasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectBidAsUserArray[] = TableProjectBid::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectbidasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectBidAsUser = TableProjectBid::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectbidasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectCancelAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectcancelasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectCancelAsUserArray[] = TableProjectCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectcancelasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectCancelAsUser = TableProjectCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectcancelasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectEditAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojecteditasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectEditAsUserArray[] = TableProjectEdit::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojecteditasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectEditAsUser = TableProjectEdit::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojecteditasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectMessageAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectmessageasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectMessageAsUserArray[] = TableProjectMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectmessageasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectMessageAsUser = TableProjectMessage::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectmessageasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectRequestCancelAsBuyer Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectrequestcancelasbuyer__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectRequestCancelAsBuyerArray[] = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectRequestCancelAsBuyer = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectRequestCancelAsProvider Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectrequestcancelasprovider__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectRequestCancelAsProviderArray[] = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectRequestCancelAsProvider = TableProjectRequestCancel::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcancelasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectRequestCompleteAsBuyer Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectrequestcompleteasbuyer__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectRequestCompleteAsBuyerArray[] = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectRequestCompleteAsBuyer = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectRequestCompleteAsProvider Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectrequestcompleteasprovider__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectRequestCompleteAsProviderArray[] = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectRequestCompleteAsProvider = TableProjectRequestComplete::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectrequestcompleteasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectWonAsBuyer Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectwonasbuyer__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectWonAsBuyerArray[] = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectWonAsBuyer = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasbuyer__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableProjectWonAsProvider Virtual Binding
			$strAlias = $strAliasPrefix . 'tableprojectwonasprovider__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableProjectWonAsProviderArray[] = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableProjectWonAsProvider = TableProjectWon::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableprojectwonasprovider__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableTransactionAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tabletransactionasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableTransactionAsUserArray[] = TableTransaction::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tabletransactionasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableTransactionAsUser = TableTransaction::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tabletransactionasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableUserAddressAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableuseraddressasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableUserAddressAsUserArray[] = TableUserAddress::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseraddressasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableUserAddressAsUser = TableUserAddress::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseraddressasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableUserItemAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableuseritemasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableUserItemAsUserArray[] = TableUserItem::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseritemasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableUserItemAsUser = TableUserItem::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuseritemasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableUserProfileAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableuserprofileasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableUserProfileAsUserArray[] = TableUserProfile::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserprofileasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableUserProfileAsUser = TableUserProfile::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserprofileasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableUserStatAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableuserstatasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableUserStatAsUserArray[] = TableUserStat::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserstatasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableUserStatAsUser = TableUserStat::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableuserstatasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableViolationReportAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tableviolationreportasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableViolationReportAsUserArray[] = TableViolationReport::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableviolationreportasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableViolationReportAsUser = TableViolationReport::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tableviolationreportasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			// Check for TableWatchListAsUser Virtual Binding
			$strAlias = $strAliasPrefix . 'tablewatchlistasuser__id';
			$strAliasName = array_key_exists($strAlias, $strColumnAliasArray) ? $strColumnAliasArray[$strAlias] : $strAlias;
			if (!is_null($objDbRow->GetColumn($strAliasName))) {
				if (($strExpandAsArrayNodes) && (array_key_exists($strAlias, $strExpandAsArrayNodes)))
					$objToReturn->_objTableWatchListAsUserArray[] = TableWatchList::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablewatchlistasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
				else
					$objToReturn->_objTableWatchListAsUser = TableWatchList::InstantiateDbRow($objDbRow, $strAliasPrefix . 'tablewatchlistasuser__', $strExpandAsArrayNodes, null, $strColumnAliasArray);
			}

			return $objToReturn;
		}

		/**
		 * Instantiate an array of TableUserProjects from a Database Result
		 * @param DatabaseResultBase $objDbResult
		 * @param string $strExpandAsArrayNodes
		 * @param string[] $strColumnAliasArray
		 * @return TableUserProject[]
		 */
		public static function InstantiateDbResult(QDatabaseResultBase $objDbResult, $strExpandAsArrayNodes = null, $strColumnAliasArray = null) {
			$objToReturn = array();
			
			if (!$strColumnAliasArray)
				$strColumnAliasArray = array();

			// If blank resultset, then return empty array
			if (!$objDbResult)
				return $objToReturn;

			// Load up the return array with each row
			if ($strExpandAsArrayNodes) {
				$objToReturn = array();
				while ($objDbRow = $objDbResult->GetNextRow()) {
					$objItem = TableUserProject::InstantiateDbRow($objDbRow, null, $strExpandAsArrayNodes, $objToReturn, $strColumnAliasArray);
					if ($objItem) {
						$objToReturn[] = $objItem;
					}
				}
			} else {
				while ($objDbRow = $objDbResult->GetNextRow())
					$objToReturn[] = TableUserProject::InstantiateDbRow($objDbRow, null, null, null, $strColumnAliasArray);
			}

			return $objToReturn;
		}



		///////////////////////////////////////////////////
		// INDEX-BASED LOAD METHODS (Single Load and Array)
		///////////////////////////////////////////////////
			
		/**
		 * Load a single TableUserProject object,
		 * by Id Index(es)
		 * @param integer $intId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject
		*/
		public static function LoadById($intId, $objOptionalClauses = null) {
			return TableUserProject::QuerySingle(
				QQ::AndCondition(
					QQ::Equal(QQN::TableUserProject()->Id, $intId)
				),
				$objOptionalClauses
			);
		}
			
		/**
		 * Load a single TableUserProject object,
		 * by UserName Index(es)
		 * @param string $strUserName
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject
		*/
		public static function LoadByUserName($strUserName, $objOptionalClauses = null) {
			return TableUserProject::QuerySingle(
				QQ::AndCondition(
					QQ::Equal(QQN::TableUserProject()->UserName, $strUserName)
				),
				$objOptionalClauses
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by CategoryId Index(es)
		 * @param integer $intCategoryId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByCategoryId($intCategoryId, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByCategoryId query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->CategoryId, $intCategoryId),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by CategoryId Index(es)
		 * @param integer $intCategoryId
		 * @return int
		*/
		public static function CountByCategoryId($intCategoryId) {
			// Call TableUserProject::QueryCount to perform the CountByCategoryId query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->CategoryId, $intCategoryId)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by SubcategoryId Index(es)
		 * @param integer $intSubcategoryId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayBySubcategoryId($intSubcategoryId, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayBySubcategoryId query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->SubcategoryId, $intSubcategoryId),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by SubcategoryId Index(es)
		 * @param integer $intSubcategoryId
		 * @return int
		*/
		public static function CountBySubcategoryId($intSubcategoryId) {
			// Call TableUserProject::QueryCount to perform the CountBySubcategoryId query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->SubcategoryId, $intSubcategoryId)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Firstname Index(es)
		 * @param string $strFirstname
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByFirstname($strFirstname, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByFirstname query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Firstname, $strFirstname),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Firstname Index(es)
		 * @param string $strFirstname
		 * @return int
		*/
		public static function CountByFirstname($strFirstname) {
			// Call TableUserProject::QueryCount to perform the CountByFirstname query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Firstname, $strFirstname)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Lastname Index(es)
		 * @param string $strLastname
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByLastname($strLastname, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByLastname query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Lastname, $strLastname),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Lastname Index(es)
		 * @param string $strLastname
		 * @return int
		*/
		public static function CountByLastname($strLastname) {
			// Call TableUserProject::QueryCount to perform the CountByLastname query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Lastname, $strLastname)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Companyname Index(es)
		 * @param string $strCompanyname
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByCompanyname($strCompanyname, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByCompanyname query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Companyname, $strCompanyname),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Companyname Index(es)
		 * @param string $strCompanyname
		 * @return int
		*/
		public static function CountByCompanyname($strCompanyname) {
			// Call TableUserProject::QueryCount to perform the CountByCompanyname query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Companyname, $strCompanyname)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Mail Index(es)
		 * @param string $strMail
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByMail($strMail, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByMail query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Mail, $strMail),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Mail Index(es)
		 * @param string $strMail
		 * @return int
		*/
		public static function CountByMail($strMail) {
			// Call TableUserProject::QueryCount to perform the CountByMail query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Mail, $strMail)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Mail2 Index(es)
		 * @param string $strMail2
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByMail2($strMail2, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByMail2 query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Mail2, $strMail2),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Mail2 Index(es)
		 * @param string $strMail2
		 * @return int
		*/
		public static function CountByMail2($strMail2) {
			// Call TableUserProject::QueryCount to perform the CountByMail2 query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Mail2, $strMail2)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Ip Index(es)
		 * @param string $strIp
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByIp($strIp, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByIp query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Ip, $strIp),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Ip Index(es)
		 * @param string $strIp
		 * @return int
		*/
		public static function CountByIp($strIp) {
			// Call TableUserProject::QueryCount to perform the CountByIp query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Ip, $strIp)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Country Index(es)
		 * @param string $strCountry
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByCountry($strCountry, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByCountry query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Country, $strCountry),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Country Index(es)
		 * @param string $strCountry
		 * @return int
		*/
		public static function CountByCountry($strCountry) {
			// Call TableUserProject::QueryCount to perform the CountByCountry query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Country, $strCountry)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by LoginDate Index(es)
		 * @param QDateTime $dttLoginDate
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByLoginDate($dttLoginDate, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByLoginDate query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->LoginDate, $dttLoginDate),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by LoginDate Index(es)
		 * @param QDateTime $dttLoginDate
		 * @return int
		*/
		public static function CountByLoginDate($dttLoginDate) {
			// Call TableUserProject::QueryCount to perform the CountByLoginDate query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->LoginDate, $dttLoginDate)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by TimeupDate Index(es)
		 * @param QDateTime $dttTimeupDate
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByTimeupDate($dttTimeupDate, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByTimeupDate query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->TimeupDate, $dttTimeupDate),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by TimeupDate Index(es)
		 * @param QDateTime $dttTimeupDate
		 * @return int
		*/
		public static function CountByTimeupDate($dttTimeupDate) {
			// Call TableUserProject::QueryCount to perform the CountByTimeupDate query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->TimeupDate, $dttTimeupDate)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by UserLevel Index(es)
		 * @param integer $intUserLevel
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByUserLevel($intUserLevel, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByUserLevel query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->UserLevel, $intUserLevel),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by UserLevel Index(es)
		 * @param integer $intUserLevel
		 * @return int
		*/
		public static function CountByUserLevel($intUserLevel) {
			// Call TableUserProject::QueryCount to perform the CountByUserLevel query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->UserLevel, $intUserLevel)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by UserType Index(es)
		 * @param integer $intUserType
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByUserType($intUserType, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByUserType query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->UserType, $intUserType),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by UserType Index(es)
		 * @param integer $intUserType
		 * @return int
		*/
		public static function CountByUserType($intUserType) {
			// Call TableUserProject::QueryCount to perform the CountByUserType query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->UserType, $intUserType)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by PointBalance Index(es)
		 * @param integer $intPointBalance
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByPointBalance($intPointBalance, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByPointBalance query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->PointBalance, $intPointBalance),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by PointBalance Index(es)
		 * @param integer $intPointBalance
		 * @return int
		*/
		public static function CountByPointBalance($intPointBalance) {
			// Call TableUserProject::QueryCount to perform the CountByPointBalance query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->PointBalance, $intPointBalance)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by PointInTotal Index(es)
		 * @param integer $intPointInTotal
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByPointInTotal($intPointInTotal, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByPointInTotal query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->PointInTotal, $intPointInTotal),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by PointInTotal Index(es)
		 * @param integer $intPointInTotal
		 * @return int
		*/
		public static function CountByPointInTotal($intPointInTotal) {
			// Call TableUserProject::QueryCount to perform the CountByPointInTotal query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->PointInTotal, $intPointInTotal)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by PointOutTotal Index(es)
		 * @param integer $intPointOutTotal
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByPointOutTotal($intPointOutTotal, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByPointOutTotal query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->PointOutTotal, $intPointOutTotal),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by PointOutTotal Index(es)
		 * @param integer $intPointOutTotal
		 * @return int
		*/
		public static function CountByPointOutTotal($intPointOutTotal) {
			// Call TableUserProject::QueryCount to perform the CountByPointOutTotal query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->PointOutTotal, $intPointOutTotal)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by PointChargedTotal Index(es)
		 * @param integer $intPointChargedTotal
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByPointChargedTotal($intPointChargedTotal, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByPointChargedTotal query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->PointChargedTotal, $intPointChargedTotal),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by PointChargedTotal Index(es)
		 * @param integer $intPointChargedTotal
		 * @return int
		*/
		public static function CountByPointChargedTotal($intPointChargedTotal) {
			// Call TableUserProject::QueryCount to perform the CountByPointChargedTotal query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->PointChargedTotal, $intPointChargedTotal)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by LanguageId Index(es)
		 * @param integer $intLanguageId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByLanguageId($intLanguageId, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByLanguageId query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->LanguageId, $intLanguageId),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by LanguageId Index(es)
		 * @param integer $intLanguageId
		 * @return int
		*/
		public static function CountByLanguageId($intLanguageId) {
			// Call TableUserProject::QueryCount to perform the CountByLanguageId query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->LanguageId, $intLanguageId)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by SendmailNews Index(es)
		 * @param string $strSendmailNews
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayBySendmailNews($strSendmailNews, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayBySendmailNews query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->SendmailNews, $strSendmailNews),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by SendmailNews Index(es)
		 * @param string $strSendmailNews
		 * @return int
		*/
		public static function CountBySendmailNews($strSendmailNews) {
			// Call TableUserProject::QueryCount to perform the CountBySendmailNews query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->SendmailNews, $strSendmailNews)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by SendmailByKeywordInNewProject Index(es)
		 * @param string $strSendmailByKeywordInNewProject
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayBySendmailByKeywordInNewProject($strSendmailByKeywordInNewProject, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayBySendmailByKeywordInNewProject query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->SendmailByKeywordInNewProject, $strSendmailByKeywordInNewProject),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by SendmailByKeywordInNewProject Index(es)
		 * @param string $strSendmailByKeywordInNewProject
		 * @return int
		*/
		public static function CountBySendmailByKeywordInNewProject($strSendmailByKeywordInNewProject) {
			// Call TableUserProject::QueryCount to perform the CountBySendmailByKeywordInNewProject query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->SendmailByKeywordInNewProject, $strSendmailByKeywordInNewProject)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by SendmailByNewBid Index(es)
		 * @param string $strSendmailByNewBid
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayBySendmailByNewBid($strSendmailByNewBid, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayBySendmailByNewBid query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->SendmailByNewBid, $strSendmailByNewBid),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by SendmailByNewBid Index(es)
		 * @param string $strSendmailByNewBid
		 * @return int
		*/
		public static function CountBySendmailByNewBid($strSendmailByNewBid) {
			// Call TableUserProject::QueryCount to perform the CountBySendmailByNewBid query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->SendmailByNewBid, $strSendmailByNewBid)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RateAsBuyer Index(es)
		 * @param double $fltRateAsBuyer
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRateAsBuyer($fltRateAsBuyer, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRateAsBuyer query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer, $fltRateAsBuyer),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RateAsBuyer Index(es)
		 * @param double $fltRateAsBuyer
		 * @return int
		*/
		public static function CountByRateAsBuyer($fltRateAsBuyer) {
			// Call TableUserProject::QueryCount to perform the CountByRateAsBuyer query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer, $fltRateAsBuyer)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RateAsProvider Index(es)
		 * @param double $fltRateAsProvider
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRateAsProvider($fltRateAsProvider, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRateAsProvider query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->RateAsProvider, $fltRateAsProvider),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RateAsProvider Index(es)
		 * @param double $fltRateAsProvider
		 * @return int
		*/
		public static function CountByRateAsProvider($fltRateAsProvider) {
			// Call TableUserProject::QueryCount to perform the CountByRateAsProvider query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->RateAsProvider, $fltRateAsProvider)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RateAsBuyer6month Index(es)
		 * @param double $fltRateAsBuyer6month
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRateAsBuyer6month($fltRateAsBuyer6month, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRateAsBuyer6month query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer6month, $fltRateAsBuyer6month),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RateAsBuyer6month Index(es)
		 * @param double $fltRateAsBuyer6month
		 * @return int
		*/
		public static function CountByRateAsBuyer6month($fltRateAsBuyer6month) {
			// Call TableUserProject::QueryCount to perform the CountByRateAsBuyer6month query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer6month, $fltRateAsBuyer6month)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RateAsProvider6month Index(es)
		 * @param double $fltRateAsProvider6month
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRateAsProvider6month($fltRateAsProvider6month, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRateAsProvider6month query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->RateAsProvider6month, $fltRateAsProvider6month),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RateAsProvider6month Index(es)
		 * @param double $fltRateAsProvider6month
		 * @return int
		*/
		public static function CountByRateAsProvider6month($fltRateAsProvider6month) {
			// Call TableUserProject::QueryCount to perform the CountByRateAsProvider6month query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->RateAsProvider6month, $fltRateAsProvider6month)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Authorized Index(es)
		 * @param string $strAuthorized
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByAuthorized($strAuthorized, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByAuthorized query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Authorized, $strAuthorized),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Authorized Index(es)
		 * @param string $strAuthorized
		 * @return int
		*/
		public static function CountByAuthorized($strAuthorized) {
			// Call TableUserProject::QueryCount to perform the CountByAuthorized query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Authorized, $strAuthorized)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Active Index(es)
		 * @param string $strActive
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByActive($strActive, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByActive query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Active, $strActive),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Active Index(es)
		 * @param string $strActive
		 * @return int
		*/
		public static function CountByActive($strActive) {
			// Call TableUserProject::QueryCount to perform the CountByActive query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Active, $strActive)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by Suspended Index(es)
		 * @param string $strSuspended
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayBySuspended($strSuspended, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayBySuspended query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->Suspended, $strSuspended),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by Suspended Index(es)
		 * @param string $strSuspended
		 * @return int
		*/
		public static function CountBySuspended($strSuspended) {
			// Call TableUserProject::QueryCount to perform the CountBySuspended query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->Suspended, $strSuspended)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by AffiliatorId Index(es)
		 * @param integer $intAffiliatorId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByAffiliatorId($intAffiliatorId, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByAffiliatorId query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->AffiliatorId, $intAffiliatorId),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by AffiliatorId Index(es)
		 * @param integer $intAffiliatorId
		 * @return int
		*/
		public static function CountByAffiliatorId($intAffiliatorId) {
			// Call TableUserProject::QueryCount to perform the CountByAffiliatorId query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->AffiliatorId, $intAffiliatorId)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by CategoryId, SubcategoryId Index(es)
		 * @param integer $intCategoryId
		 * @param integer $intSubcategoryId
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByCategoryIdSubcategoryId($intCategoryId, $intSubcategoryId, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByCategoryIdSubcategoryId query
			try {
				return TableUserProject::QueryArray(
					QQ::AndCondition(
					QQ::Equal(QQN::TableUserProject()->CategoryId, $intCategoryId),
					QQ::Equal(QQN::TableUserProject()->SubcategoryId, $intSubcategoryId)
					),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by CategoryId, SubcategoryId Index(es)
		 * @param integer $intCategoryId
		 * @param integer $intSubcategoryId
		 * @return int
		*/
		public static function CountByCategoryIdSubcategoryId($intCategoryId, $intSubcategoryId) {
			// Call TableUserProject::QueryCount to perform the CountByCategoryIdSubcategoryId query
			return TableUserProject::QueryCount(
				QQ::AndCondition(
				QQ::Equal(QQN::TableUserProject()->CategoryId, $intCategoryId),
				QQ::Equal(QQN::TableUserProject()->SubcategoryId, $intSubcategoryId)
				)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RegisterDate Index(es)
		 * @param QDateTime $dttRegisterDate
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRegisterDate($dttRegisterDate, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRegisterDate query
			try {
				return TableUserProject::QueryArray(
					QQ::Equal(QQN::TableUserProject()->RegisterDate, $dttRegisterDate),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RegisterDate Index(es)
		 * @param QDateTime $dttRegisterDate
		 * @return int
		*/
		public static function CountByRegisterDate($dttRegisterDate) {
			// Call TableUserProject::QueryCount to perform the CountByRegisterDate query
			return TableUserProject::QueryCount(
				QQ::Equal(QQN::TableUserProject()->RegisterDate, $dttRegisterDate)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RateAsBuyer1, RateAsBuyer2, RateAsBuyer3, RateAsBuyer4, RateAsBuyer5, RateAsBuyer6, RateAsBuyer Index(es)
		 * @param double $fltRateAsBuyer1
		 * @param double $fltRateAsBuyer2
		 * @param double $fltRateAsBuyer3
		 * @param double $fltRateAsBuyer4
		 * @param double $fltRateAsBuyer5
		 * @param double $fltRateAsBuyer6
		 * @param double $fltRateAsBuyer
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRateAsBuyer1RateAsBuyer2RateAsBuyer3RateAsBuyer4RateAsBuyer5RateAsBuyer6RateAsBuyer($fltRateAsBuyer1, $fltRateAsBuyer2, $fltRateAsBuyer3, $fltRateAsBuyer4, $fltRateAsBuyer5, $fltRateAsBuyer6, $fltRateAsBuyer, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRateAsBuyer1RateAsBuyer2RateAsBuyer3RateAsBuyer4RateAsBuyer5RateAsBuyer6RateAsBuyer query
			try {
				return TableUserProject::QueryArray(
					QQ::AndCondition(
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer1, $fltRateAsBuyer1),
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer2, $fltRateAsBuyer2),
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer3, $fltRateAsBuyer3),
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer4, $fltRateAsBuyer4),
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer5, $fltRateAsBuyer5),
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer6, $fltRateAsBuyer6),
					QQ::Equal(QQN::TableUserProject()->RateAsBuyer, $fltRateAsBuyer)
					),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RateAsBuyer1, RateAsBuyer2, RateAsBuyer3, RateAsBuyer4, RateAsBuyer5, RateAsBuyer6, RateAsBuyer Index(es)
		 * @param double $fltRateAsBuyer1
		 * @param double $fltRateAsBuyer2
		 * @param double $fltRateAsBuyer3
		 * @param double $fltRateAsBuyer4
		 * @param double $fltRateAsBuyer5
		 * @param double $fltRateAsBuyer6
		 * @param double $fltRateAsBuyer
		 * @return int
		*/
		public static function CountByRateAsBuyer1RateAsBuyer2RateAsBuyer3RateAsBuyer4RateAsBuyer5RateAsBuyer6RateAsBuyer($fltRateAsBuyer1, $fltRateAsBuyer2, $fltRateAsBuyer3, $fltRateAsBuyer4, $fltRateAsBuyer5, $fltRateAsBuyer6, $fltRateAsBuyer) {
			// Call TableUserProject::QueryCount to perform the CountByRateAsBuyer1RateAsBuyer2RateAsBuyer3RateAsBuyer4RateAsBuyer5RateAsBuyer6RateAsBuyer query
			return TableUserProject::QueryCount(
				QQ::AndCondition(
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer1, $fltRateAsBuyer1),
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer2, $fltRateAsBuyer2),
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer3, $fltRateAsBuyer3),
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer4, $fltRateAsBuyer4),
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer5, $fltRateAsBuyer5),
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer6, $fltRateAsBuyer6),
				QQ::Equal(QQN::TableUserProject()->RateAsBuyer, $fltRateAsBuyer)
				)
			);
		}
			
		/**
		 * Load an array of TableUserProject objects,
		 * by RateAsProvider1, RateAsProvider2, RateAsProvider3, RateAsProvider4, RateAsProvider5, RateAsProvider6, RateAsProvider Index(es)
		 * @param double $fltRateAsProvider1
		 * @param double $fltRateAsProvider2
		 * @param double $fltRateAsProvider3
		 * @param double $fltRateAsProvider4
		 * @param double $fltRateAsProvider5
		 * @param double $fltRateAsProvider6
		 * @param double $fltRateAsProvider
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProject[]
		*/
		public static function LoadArrayByRateAsProvider1RateAsProvider2RateAsProvider3RateAsProvider4RateAsProvider5RateAsProvider6RateAsProvider($fltRateAsProvider1, $fltRateAsProvider2, $fltRateAsProvider3, $fltRateAsProvider4, $fltRateAsProvider5, $fltRateAsProvider6, $fltRateAsProvider, $objOptionalClauses = null) {
			// Call TableUserProject::QueryArray to perform the LoadArrayByRateAsProvider1RateAsProvider2RateAsProvider3RateAsProvider4RateAsProvider5RateAsProvider6RateAsProvider query
			try {
				return TableUserProject::QueryArray(
					QQ::AndCondition(
					QQ::Equal(QQN::TableUserProject()->RateAsProvider1, $fltRateAsProvider1),
					QQ::Equal(QQN::TableUserProject()->RateAsProvider2, $fltRateAsProvider2),
					QQ::Equal(QQN::TableUserProject()->RateAsProvider3, $fltRateAsProvider3),
					QQ::Equal(QQN::TableUserProject()->RateAsProvider4, $fltRateAsProvider4),
					QQ::Equal(QQN::TableUserProject()->RateAsProvider5, $fltRateAsProvider5),
					QQ::Equal(QQN::TableUserProject()->RateAsProvider6, $fltRateAsProvider6),
					QQ::Equal(QQN::TableUserProject()->RateAsProvider, $fltRateAsProvider)
					),
					$objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Count TableUserProjects
		 * by RateAsProvider1, RateAsProvider2, RateAsProvider3, RateAsProvider4, RateAsProvider5, RateAsProvider6, RateAsProvider Index(es)
		 * @param double $fltRateAsProvider1
		 * @param double $fltRateAsProvider2
		 * @param double $fltRateAsProvider3
		 * @param double $fltRateAsProvider4
		 * @param double $fltRateAsProvider5
		 * @param double $fltRateAsProvider6
		 * @param double $fltRateAsProvider
		 * @return int
		*/
		public static function CountByRateAsProvider1RateAsProvider2RateAsProvider3RateAsProvider4RateAsProvider5RateAsProvider6RateAsProvider($fltRateAsProvider1, $fltRateAsProvider2, $fltRateAsProvider3, $fltRateAsProvider4, $fltRateAsProvider5, $fltRateAsProvider6, $fltRateAsProvider) {
			// Call TableUserProject::QueryCount to perform the CountByRateAsProvider1RateAsProvider2RateAsProvider3RateAsProvider4RateAsProvider5RateAsProvider6RateAsProvider query
			return TableUserProject::QueryCount(
				QQ::AndCondition(
				QQ::Equal(QQN::TableUserProject()->RateAsProvider1, $fltRateAsProvider1),
				QQ::Equal(QQN::TableUserProject()->RateAsProvider2, $fltRateAsProvider2),
				QQ::Equal(QQN::TableUserProject()->RateAsProvider3, $fltRateAsProvider3),
				QQ::Equal(QQN::TableUserProject()->RateAsProvider4, $fltRateAsProvider4),
				QQ::Equal(QQN::TableUserProject()->RateAsProvider5, $fltRateAsProvider5),
				QQ::Equal(QQN::TableUserProject()->RateAsProvider6, $fltRateAsProvider6),
				QQ::Equal(QQN::TableUserProject()->RateAsProvider, $fltRateAsProvider)
				)
			);
		}



		////////////////////////////////////////////////////
		// INDEX-BASED LOAD METHODS (Array via Many to Many)
		////////////////////////////////////////////////////




		//////////////////////////
		// SAVE, DELETE AND RELOAD
		//////////////////////////

		/**
		 * Save this TableUserProject
		 * @param bool $blnForceInsert
		 * @param bool $blnForceUpdate
		 * @return int
		 */
		public function Save($blnForceInsert = false, $blnForceUpdate = false) {
			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			$mixToReturn = null;

			try {
				if ((!$this->__blnRestored) || ($blnForceInsert)) {
					// Perform an INSERT query
					$objDatabase->NonQuery('
						INSERT INTO `table_user_project` (
							`category_id`,
							`subcategory_id`,
							`user_name`,
							`password`,
							`firstname`,
							`lastname`,
							`companyname`,
							`mail`,
							`mail2`,
							`ip`,
							`country`,
							`city`,
							`address1`,
							`address2`,
							`postal_code`,
							`phone`,
							`fax`,
							`login_date`,
							`logout_date`,
							`timeup_date`,
							`user_type`,
							`user_level`,
							`booth_count`,
							`portfolio_count`,
							`point_balance`,
							`point_in_total`,
							`point_out_total`,
							`point_charged_total`,
							`language_id`,
							`sendmail_news`,
							`sendmail_by_keyword_in_new_project`,
							`sendmail_by_new_bid`,
							`keyword`,
							`rate_as_buyer`,
							`rate_as_provider`,
							`rate_as_buyer_6month`,
							`rate_as_provider_6month`,
							`authorized`,
							`authorization_code`,
							`authorized_date`,
							`active`,
							`suspended`,
							`affiliator_id`,
							`affliator_code`,
							`firstname_kana`,
							`lastname_kana`,
							`department`,
							`register_date`,
							`percentage_will_charge`,
							`last_access_date`,
							`rate_as_buyer_1`,
							`rate_as_buyer_2`,
							`rate_as_buyer_3`,
							`rate_as_buyer_4`,
							`rate_as_buyer_5`,
							`rate_as_buyer_6`,
							`rate_as_provider_1`,
							`rate_as_provider_2`,
							`rate_as_provider_3`,
							`rate_as_provider_4`,
							`rate_as_provider_5`,
							`rate_as_provider_6`
						) VALUES (
							' . $objDatabase->SqlVariable($this->intCategoryId) . ',
							' . $objDatabase->SqlVariable($this->intSubcategoryId) . ',
							' . $objDatabase->SqlVariable($this->strUserName) . ',
							' . $objDatabase->SqlVariable($this->strPassword) . ',
							' . $objDatabase->SqlVariable($this->strFirstname) . ',
							' . $objDatabase->SqlVariable($this->strLastname) . ',
							' . $objDatabase->SqlVariable($this->strCompanyname) . ',
							' . $objDatabase->SqlVariable($this->strMail) . ',
							' . $objDatabase->SqlVariable($this->strMail2) . ',
							' . $objDatabase->SqlVariable($this->strIp) . ',
							' . $objDatabase->SqlVariable($this->strCountry) . ',
							' . $objDatabase->SqlVariable($this->strCity) . ',
							' . $objDatabase->SqlVariable($this->strAddress1) . ',
							' . $objDatabase->SqlVariable($this->strAddress2) . ',
							' . $objDatabase->SqlVariable($this->strPostalCode) . ',
							' . $objDatabase->SqlVariable($this->strPhone) . ',
							' . $objDatabase->SqlVariable($this->strFax) . ',
							' . $objDatabase->SqlVariable($this->dttLoginDate) . ',
							' . $objDatabase->SqlVariable($this->dttLogoutDate) . ',
							' . $objDatabase->SqlVariable($this->dttTimeupDate) . ',
							' . $objDatabase->SqlVariable($this->intUserType) . ',
							' . $objDatabase->SqlVariable($this->intUserLevel) . ',
							' . $objDatabase->SqlVariable($this->intBoothCount) . ',
							' . $objDatabase->SqlVariable($this->intPortfolioCount) . ',
							' . $objDatabase->SqlVariable($this->intPointBalance) . ',
							' . $objDatabase->SqlVariable($this->intPointInTotal) . ',
							' . $objDatabase->SqlVariable($this->intPointOutTotal) . ',
							' . $objDatabase->SqlVariable($this->intPointChargedTotal) . ',
							' . $objDatabase->SqlVariable($this->intLanguageId) . ',
							' . $objDatabase->SqlVariable($this->strSendmailNews) . ',
							' . $objDatabase->SqlVariable($this->strSendmailByKeywordInNewProject) . ',
							' . $objDatabase->SqlVariable($this->strSendmailByNewBid) . ',
							' . $objDatabase->SqlVariable($this->strKeyword) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer6month) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider6month) . ',
							' . $objDatabase->SqlVariable($this->strAuthorized) . ',
							' . $objDatabase->SqlVariable($this->strAuthorizationCode) . ',
							' . $objDatabase->SqlVariable($this->dttAuthorizedDate) . ',
							' . $objDatabase->SqlVariable($this->strActive) . ',
							' . $objDatabase->SqlVariable($this->strSuspended) . ',
							' . $objDatabase->SqlVariable($this->intAffiliatorId) . ',
							' . $objDatabase->SqlVariable($this->strAffliatorCode) . ',
							' . $objDatabase->SqlVariable($this->strFirstnameKana) . ',
							' . $objDatabase->SqlVariable($this->strLastnameKana) . ',
							' . $objDatabase->SqlVariable($this->strDepartment) . ',
							' . $objDatabase->SqlVariable($this->dttRegisterDate) . ',
							' . $objDatabase->SqlVariable($this->fltPercentageWillCharge) . ',
							' . $objDatabase->SqlVariable($this->dttLastAccessDate) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer1) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer2) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer3) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer4) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer5) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsBuyer6) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider1) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider2) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider3) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider4) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider5) . ',
							' . $objDatabase->SqlVariable($this->fltRateAsProvider6) . '
						)
					');

					// Update Identity column and return its value
					$mixToReturn = $this->intId = $objDatabase->InsertId('table_user_project', 'id');
				} else {
					// Perform an UPDATE query

					// First checking for Optimistic Locking constraints (if applicable)

					// Perform the UPDATE query
					$objDatabase->NonQuery('
						UPDATE
							`table_user_project`
						SET
							`category_id` = ' . $objDatabase->SqlVariable($this->intCategoryId) . ',
							`subcategory_id` = ' . $objDatabase->SqlVariable($this->intSubcategoryId) . ',
							`user_name` = ' . $objDatabase->SqlVariable($this->strUserName) . ',
							`password` = ' . $objDatabase->SqlVariable($this->strPassword) . ',
							`firstname` = ' . $objDatabase->SqlVariable($this->strFirstname) . ',
							`lastname` = ' . $objDatabase->SqlVariable($this->strLastname) . ',
							`companyname` = ' . $objDatabase->SqlVariable($this->strCompanyname) . ',
							`mail` = ' . $objDatabase->SqlVariable($this->strMail) . ',
							`mail2` = ' . $objDatabase->SqlVariable($this->strMail2) . ',
							`ip` = ' . $objDatabase->SqlVariable($this->strIp) . ',
							`country` = ' . $objDatabase->SqlVariable($this->strCountry) . ',
							`city` = ' . $objDatabase->SqlVariable($this->strCity) . ',
							`address1` = ' . $objDatabase->SqlVariable($this->strAddress1) . ',
							`address2` = ' . $objDatabase->SqlVariable($this->strAddress2) . ',
							`postal_code` = ' . $objDatabase->SqlVariable($this->strPostalCode) . ',
							`phone` = ' . $objDatabase->SqlVariable($this->strPhone) . ',
							`fax` = ' . $objDatabase->SqlVariable($this->strFax) . ',
							`login_date` = ' . $objDatabase->SqlVariable($this->dttLoginDate) . ',
							`logout_date` = ' . $objDatabase->SqlVariable($this->dttLogoutDate) . ',
							`timeup_date` = ' . $objDatabase->SqlVariable($this->dttTimeupDate) . ',
							`user_type` = ' . $objDatabase->SqlVariable($this->intUserType) . ',
							`user_level` = ' . $objDatabase->SqlVariable($this->intUserLevel) . ',
							`booth_count` = ' . $objDatabase->SqlVariable($this->intBoothCount) . ',
							`portfolio_count` = ' . $objDatabase->SqlVariable($this->intPortfolioCount) . ',
							`point_balance` = ' . $objDatabase->SqlVariable($this->intPointBalance) . ',
							`point_in_total` = ' . $objDatabase->SqlVariable($this->intPointInTotal) . ',
							`point_out_total` = ' . $objDatabase->SqlVariable($this->intPointOutTotal) . ',
							`point_charged_total` = ' . $objDatabase->SqlVariable($this->intPointChargedTotal) . ',
							`language_id` = ' . $objDatabase->SqlVariable($this->intLanguageId) . ',
							`sendmail_news` = ' . $objDatabase->SqlVariable($this->strSendmailNews) . ',
							`sendmail_by_keyword_in_new_project` = ' . $objDatabase->SqlVariable($this->strSendmailByKeywordInNewProject) . ',
							`sendmail_by_new_bid` = ' . $objDatabase->SqlVariable($this->strSendmailByNewBid) . ',
							`keyword` = ' . $objDatabase->SqlVariable($this->strKeyword) . ',
							`rate_as_buyer` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer) . ',
							`rate_as_provider` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider) . ',
							`rate_as_buyer_6month` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer6month) . ',
							`rate_as_provider_6month` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider6month) . ',
							`authorized` = ' . $objDatabase->SqlVariable($this->strAuthorized) . ',
							`authorization_code` = ' . $objDatabase->SqlVariable($this->strAuthorizationCode) . ',
							`authorized_date` = ' . $objDatabase->SqlVariable($this->dttAuthorizedDate) . ',
							`active` = ' . $objDatabase->SqlVariable($this->strActive) . ',
							`suspended` = ' . $objDatabase->SqlVariable($this->strSuspended) . ',
							`affiliator_id` = ' . $objDatabase->SqlVariable($this->intAffiliatorId) . ',
							`affliator_code` = ' . $objDatabase->SqlVariable($this->strAffliatorCode) . ',
							`firstname_kana` = ' . $objDatabase->SqlVariable($this->strFirstnameKana) . ',
							`lastname_kana` = ' . $objDatabase->SqlVariable($this->strLastnameKana) . ',
							`department` = ' . $objDatabase->SqlVariable($this->strDepartment) . ',
							`register_date` = ' . $objDatabase->SqlVariable($this->dttRegisterDate) . ',
							`percentage_will_charge` = ' . $objDatabase->SqlVariable($this->fltPercentageWillCharge) . ',
							`last_access_date` = ' . $objDatabase->SqlVariable($this->dttLastAccessDate) . ',
							`rate_as_buyer_1` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer1) . ',
							`rate_as_buyer_2` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer2) . ',
							`rate_as_buyer_3` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer3) . ',
							`rate_as_buyer_4` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer4) . ',
							`rate_as_buyer_5` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer5) . ',
							`rate_as_buyer_6` = ' . $objDatabase->SqlVariable($this->fltRateAsBuyer6) . ',
							`rate_as_provider_1` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider1) . ',
							`rate_as_provider_2` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider2) . ',
							`rate_as_provider_3` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider3) . ',
							`rate_as_provider_4` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider4) . ',
							`rate_as_provider_5` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider5) . ',
							`rate_as_provider_6` = ' . $objDatabase->SqlVariable($this->fltRateAsProvider6) . '
						WHERE
							`id` = ' . $objDatabase->SqlVariable($this->intId) . '
					');
				}

			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}

			// Update __blnRestored and any Non-Identity PK Columns (if applicable)
			$this->__blnRestored = true;


			// Return 
			return $mixToReturn;
		}

		/**
		 * Delete this TableUserProject
		 * @return void
		 */
		public function Delete() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Cannot delete this TableUserProject with an unset primary key.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();


			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_project`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($this->intId) . '');
		}

		/**
		 * Delete all TableUserProjects
		 * @return void
		 */
		public static function DeleteAll() {
			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_project`');
		}

		/**
		 * Truncate table_user_project table
		 * @return void
		 */
		public static function Truncate() {
			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the Query
			$objDatabase->NonQuery('
				TRUNCATE `table_user_project`');
		}

		/**
		 * Reload this TableUserProject from the database.
		 * @return void
		 */
		public function Reload() {
			// Make sure we are actually Restored from the database
			if (!$this->__blnRestored)
				throw new QCallerException('Cannot call Reload() on a new, unsaved TableUserProject object.');

			// Reload the Object
			$objReloaded = TableUserProject::Load($this->intId);

			// Update $this's local variables to match
			$this->intCategoryId = $objReloaded->intCategoryId;
			$this->intSubcategoryId = $objReloaded->intSubcategoryId;
			$this->strUserName = $objReloaded->strUserName;
			$this->strPassword = $objReloaded->strPassword;
			$this->strFirstname = $objReloaded->strFirstname;
			$this->strLastname = $objReloaded->strLastname;
			$this->strCompanyname = $objReloaded->strCompanyname;
			$this->strMail = $objReloaded->strMail;
			$this->strMail2 = $objReloaded->strMail2;
			$this->strIp = $objReloaded->strIp;
			$this->strCountry = $objReloaded->strCountry;
			$this->strCity = $objReloaded->strCity;
			$this->strAddress1 = $objReloaded->strAddress1;
			$this->strAddress2 = $objReloaded->strAddress2;
			$this->strPostalCode = $objReloaded->strPostalCode;
			$this->strPhone = $objReloaded->strPhone;
			$this->strFax = $objReloaded->strFax;
			$this->dttLoginDate = $objReloaded->dttLoginDate;
			$this->dttLogoutDate = $objReloaded->dttLogoutDate;
			$this->dttTimeupDate = $objReloaded->dttTimeupDate;
			$this->intUserType = $objReloaded->intUserType;
			$this->intUserLevel = $objReloaded->intUserLevel;
			$this->intBoothCount = $objReloaded->intBoothCount;
			$this->intPortfolioCount = $objReloaded->intPortfolioCount;
			$this->intPointBalance = $objReloaded->intPointBalance;
			$this->intPointInTotal = $objReloaded->intPointInTotal;
			$this->intPointOutTotal = $objReloaded->intPointOutTotal;
			$this->intPointChargedTotal = $objReloaded->intPointChargedTotal;
			$this->intLanguageId = $objReloaded->intLanguageId;
			$this->strSendmailNews = $objReloaded->strSendmailNews;
			$this->strSendmailByKeywordInNewProject = $objReloaded->strSendmailByKeywordInNewProject;
			$this->strSendmailByNewBid = $objReloaded->strSendmailByNewBid;
			$this->strKeyword = $objReloaded->strKeyword;
			$this->fltRateAsBuyer = $objReloaded->fltRateAsBuyer;
			$this->fltRateAsProvider = $objReloaded->fltRateAsProvider;
			$this->fltRateAsBuyer6month = $objReloaded->fltRateAsBuyer6month;
			$this->fltRateAsProvider6month = $objReloaded->fltRateAsProvider6month;
			$this->strAuthorized = $objReloaded->strAuthorized;
			$this->strAuthorizationCode = $objReloaded->strAuthorizationCode;
			$this->dttAuthorizedDate = $objReloaded->dttAuthorizedDate;
			$this->strActive = $objReloaded->strActive;
			$this->strSuspended = $objReloaded->strSuspended;
			$this->intAffiliatorId = $objReloaded->intAffiliatorId;
			$this->strAffliatorCode = $objReloaded->strAffliatorCode;
			$this->strFirstnameKana = $objReloaded->strFirstnameKana;
			$this->strLastnameKana = $objReloaded->strLastnameKana;
			$this->strDepartment = $objReloaded->strDepartment;
			$this->dttRegisterDate = $objReloaded->dttRegisterDate;
			$this->fltPercentageWillCharge = $objReloaded->fltPercentageWillCharge;
			$this->dttLastAccessDate = $objReloaded->dttLastAccessDate;
			$this->fltRateAsBuyer1 = $objReloaded->fltRateAsBuyer1;
			$this->fltRateAsBuyer2 = $objReloaded->fltRateAsBuyer2;
			$this->fltRateAsBuyer3 = $objReloaded->fltRateAsBuyer3;
			$this->fltRateAsBuyer4 = $objReloaded->fltRateAsBuyer4;
			$this->fltRateAsBuyer5 = $objReloaded->fltRateAsBuyer5;
			$this->fltRateAsBuyer6 = $objReloaded->fltRateAsBuyer6;
			$this->fltRateAsProvider1 = $objReloaded->fltRateAsProvider1;
			$this->fltRateAsProvider2 = $objReloaded->fltRateAsProvider2;
			$this->fltRateAsProvider3 = $objReloaded->fltRateAsProvider3;
			$this->fltRateAsProvider4 = $objReloaded->fltRateAsProvider4;
			$this->fltRateAsProvider5 = $objReloaded->fltRateAsProvider5;
			$this->fltRateAsProvider6 = $objReloaded->fltRateAsProvider6;
		}



		////////////////////
		// PUBLIC OVERRIDERS
		////////////////////

				/**
		 * Override method to perform a property "Get"
		 * This will get the value of $strName
		 *
		 * @param string $strName Name of the property to get
		 * @return mixed
		 */
		public function __get($strName) {
			switch ($strName) {
				///////////////////
				// Member Variables
				///////////////////
				case 'Id':
					/**
					 * Gets the value for intId (Read-Only PK)
					 * @return integer
					 */
					return $this->intId;

				case 'CategoryId':
					/**
					 * Gets the value for intCategoryId 
					 * @return integer
					 */
					return $this->intCategoryId;

				case 'SubcategoryId':
					/**
					 * Gets the value for intSubcategoryId 
					 * @return integer
					 */
					return $this->intSubcategoryId;

				case 'UserName':
					/**
					 * Gets the value for strUserName (Unique)
					 * @return string
					 */
					return $this->strUserName;

				case 'Password':
					/**
					 * Gets the value for strPassword (Not Null)
					 * @return string
					 */
					return $this->strPassword;

				case 'Firstname':
					/**
					 * Gets the value for strFirstname 
					 * @return string
					 */
					return $this->strFirstname;

				case 'Lastname':
					/**
					 * Gets the value for strLastname 
					 * @return string
					 */
					return $this->strLastname;

				case 'Companyname':
					/**
					 * Gets the value for strCompanyname 
					 * @return string
					 */
					return $this->strCompanyname;

				case 'Mail':
					/**
					 * Gets the value for strMail (Not Null)
					 * @return string
					 */
					return $this->strMail;

				case 'Mail2':
					/**
					 * Gets the value for strMail2 
					 * @return string
					 */
					return $this->strMail2;

				case 'Ip':
					/**
					 * Gets the value for strIp 
					 * @return string
					 */
					return $this->strIp;

				case 'Country':
					/**
					 * Gets the value for strCountry 
					 * @return string
					 */
					return $this->strCountry;

				case 'City':
					/**
					 * Gets the value for strCity 
					 * @return string
					 */
					return $this->strCity;

				case 'Address1':
					/**
					 * Gets the value for strAddress1 
					 * @return string
					 */
					return $this->strAddress1;

				case 'Address2':
					/**
					 * Gets the value for strAddress2 
					 * @return string
					 */
					return $this->strAddress2;

				case 'PostalCode':
					/**
					 * Gets the value for strPostalCode 
					 * @return string
					 */
					return $this->strPostalCode;

				case 'Phone':
					/**
					 * Gets the value for strPhone 
					 * @return string
					 */
					return $this->strPhone;

				case 'Fax':
					/**
					 * Gets the value for strFax 
					 * @return string
					 */
					return $this->strFax;

				case 'LoginDate':
					/**
					 * Gets the value for dttLoginDate 
					 * @return QDateTime
					 */
					return $this->dttLoginDate;

				case 'LogoutDate':
					/**
					 * Gets the value for dttLogoutDate 
					 * @return QDateTime
					 */
					return $this->dttLogoutDate;

				case 'TimeupDate':
					/**
					 * Gets the value for dttTimeupDate 
					 * @return QDateTime
					 */
					return $this->dttTimeupDate;

				case 'UserType':
					/**
					 * Gets the value for intUserType 
					 * @return integer
					 */
					return $this->intUserType;

				case 'UserLevel':
					/**
					 * Gets the value for intUserLevel 
					 * @return integer
					 */
					return $this->intUserLevel;

				case 'BoothCount':
					/**
					 * Gets the value for intBoothCount 
					 * @return integer
					 */
					return $this->intBoothCount;

				case 'PortfolioCount':
					/**
					 * Gets the value for intPortfolioCount 
					 * @return integer
					 */
					return $this->intPortfolioCount;

				case 'PointBalance':
					/**
					 * Gets the value for intPointBalance (Not Null)
					 * @return integer
					 */
					return $this->intPointBalance;

				case 'PointInTotal':
					/**
					 * Gets the value for intPointInTotal 
					 * @return integer
					 */
					return $this->intPointInTotal;

				case 'PointOutTotal':
					/**
					 * Gets the value for intPointOutTotal 
					 * @return integer
					 */
					return $this->intPointOutTotal;

				case 'PointChargedTotal':
					/**
					 * Gets the value for intPointChargedTotal 
					 * @return integer
					 */
					return $this->intPointChargedTotal;

				case 'LanguageId':
					/**
					 * Gets the value for intLanguageId 
					 * @return integer
					 */
					return $this->intLanguageId;

				case 'SendmailNews':
					/**
					 * Gets the value for strSendmailNews 
					 * @return string
					 */
					return $this->strSendmailNews;

				case 'SendmailByKeywordInNewProject':
					/**
					 * Gets the value for strSendmailByKeywordInNewProject 
					 * @return string
					 */
					return $this->strSendmailByKeywordInNewProject;

				case 'SendmailByNewBid':
					/**
					 * Gets the value for strSendmailByNewBid 
					 * @return string
					 */
					return $this->strSendmailByNewBid;

				case 'Keyword':
					/**
					 * Gets the value for strKeyword 
					 * @return string
					 */
					return $this->strKeyword;

				case 'RateAsBuyer':
					/**
					 * Gets the value for fltRateAsBuyer 
					 * @return double
					 */
					return $this->fltRateAsBuyer;

				case 'RateAsProvider':
					/**
					 * Gets the value for fltRateAsProvider 
					 * @return double
					 */
					return $this->fltRateAsProvider;

				case 'RateAsBuyer6month':
					/**
					 * Gets the value for fltRateAsBuyer6month 
					 * @return double
					 */
					return $this->fltRateAsBuyer6month;

				case 'RateAsProvider6month':
					/**
					 * Gets the value for fltRateAsProvider6month 
					 * @return double
					 */
					return $this->fltRateAsProvider6month;

				case 'Authorized':
					/**
					 * Gets the value for strAuthorized 
					 * @return string
					 */
					return $this->strAuthorized;

				case 'AuthorizationCode':
					/**
					 * Gets the value for strAuthorizationCode 
					 * @return string
					 */
					return $this->strAuthorizationCode;

				case 'AuthorizedDate':
					/**
					 * Gets the value for dttAuthorizedDate 
					 * @return QDateTime
					 */
					return $this->dttAuthorizedDate;

				case 'Active':
					/**
					 * Gets the value for strActive (Not Null)
					 * @return string
					 */
					return $this->strActive;

				case 'Suspended':
					/**
					 * Gets the value for strSuspended (Not Null)
					 * @return string
					 */
					return $this->strSuspended;

				case 'AffiliatorId':
					/**
					 * Gets the value for intAffiliatorId 
					 * @return integer
					 */
					return $this->intAffiliatorId;

				case 'AffliatorCode':
					/**
					 * Gets the value for strAffliatorCode 
					 * @return string
					 */
					return $this->strAffliatorCode;

				case 'FirstnameKana':
					/**
					 * Gets the value for strFirstnameKana 
					 * @return string
					 */
					return $this->strFirstnameKana;

				case 'LastnameKana':
					/**
					 * Gets the value for strLastnameKana 
					 * @return string
					 */
					return $this->strLastnameKana;

				case 'Department':
					/**
					 * Gets the value for strDepartment 
					 * @return string
					 */
					return $this->strDepartment;

				case 'RegisterDate':
					/**
					 * Gets the value for dttRegisterDate 
					 * @return QDateTime
					 */
					return $this->dttRegisterDate;

				case 'PercentageWillCharge':
					/**
					 * Gets the value for fltPercentageWillCharge (Not Null)
					 * @return double
					 */
					return $this->fltPercentageWillCharge;

				case 'LastAccessDate':
					/**
					 * Gets the value for dttLastAccessDate 
					 * @return QDateTime
					 */
					return $this->dttLastAccessDate;

				case 'RateAsBuyer1':
					/**
					 * Gets the value for fltRateAsBuyer1 
					 * @return double
					 */
					return $this->fltRateAsBuyer1;

				case 'RateAsBuyer2':
					/**
					 * Gets the value for fltRateAsBuyer2 
					 * @return double
					 */
					return $this->fltRateAsBuyer2;

				case 'RateAsBuyer3':
					/**
					 * Gets the value for fltRateAsBuyer3 
					 * @return double
					 */
					return $this->fltRateAsBuyer3;

				case 'RateAsBuyer4':
					/**
					 * Gets the value for fltRateAsBuyer4 
					 * @return double
					 */
					return $this->fltRateAsBuyer4;

				case 'RateAsBuyer5':
					/**
					 * Gets the value for fltRateAsBuyer5 
					 * @return double
					 */
					return $this->fltRateAsBuyer5;

				case 'RateAsBuyer6':
					/**
					 * Gets the value for fltRateAsBuyer6 
					 * @return double
					 */
					return $this->fltRateAsBuyer6;

				case 'RateAsProvider1':
					/**
					 * Gets the value for fltRateAsProvider1 
					 * @return double
					 */
					return $this->fltRateAsProvider1;

				case 'RateAsProvider2':
					/**
					 * Gets the value for fltRateAsProvider2 
					 * @return double
					 */
					return $this->fltRateAsProvider2;

				case 'RateAsProvider3':
					/**
					 * Gets the value for fltRateAsProvider3 
					 * @return double
					 */
					return $this->fltRateAsProvider3;

				case 'RateAsProvider4':
					/**
					 * Gets the value for fltRateAsProvider4 
					 * @return double
					 */
					return $this->fltRateAsProvider4;

				case 'RateAsProvider5':
					/**
					 * Gets the value for fltRateAsProvider5 
					 * @return double
					 */
					return $this->fltRateAsProvider5;

				case 'RateAsProvider6':
					/**
					 * Gets the value for fltRateAsProvider6 
					 * @return double
					 */
					return $this->fltRateAsProvider6;


				///////////////////
				// Member Objects
				///////////////////

				////////////////////////////
				// Virtual Object References (Many to Many and Reverse References)
				// (If restored via a "Many-to" expansion)
				////////////////////////////

				case '_TableBankAsUser':
					/**
					 * Gets the value for the private _objTableBankAsUser (Read-Only)
					 * if set due to an expansion on the table_bank.user_id reverse relationship
					 * @return TableBank
					 */
					return $this->_objTableBankAsUser;

				case '_TableBankAsUserArray':
					/**
					 * Gets the value for the private _objTableBankAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_bank.user_id reverse relationship
					 * @return TableBank[]
					 */
					return (array) $this->_objTableBankAsUserArray;

				case '_TableBankRequestInAsUser':
					/**
					 * Gets the value for the private _objTableBankRequestInAsUser (Read-Only)
					 * if set due to an expansion on the table_bank_request_in.user_id reverse relationship
					 * @return TableBankRequestIn
					 */
					return $this->_objTableBankRequestInAsUser;

				case '_TableBankRequestInAsUserArray':
					/**
					 * Gets the value for the private _objTableBankRequestInAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_bank_request_in.user_id reverse relationship
					 * @return TableBankRequestIn[]
					 */
					return (array) $this->_objTableBankRequestInAsUserArray;

				case '_TableBankRequestOutAsUser':
					/**
					 * Gets the value for the private _objTableBankRequestOutAsUser (Read-Only)
					 * if set due to an expansion on the table_bank_request_out.user_id reverse relationship
					 * @return TableBankRequestOut
					 */
					return $this->_objTableBankRequestOutAsUser;

				case '_TableBankRequestOutAsUserArray':
					/**
					 * Gets the value for the private _objTableBankRequestOutAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_bank_request_out.user_id reverse relationship
					 * @return TableBankRequestOut[]
					 */
					return (array) $this->_objTableBankRequestOutAsUserArray;

				case '_TableBoothAsUser':
					/**
					 * Gets the value for the private _objTableBoothAsUser (Read-Only)
					 * if set due to an expansion on the table_booth.user_id reverse relationship
					 * @return TableBooth
					 */
					return $this->_objTableBoothAsUser;

				case '_TableBoothAsUserArray':
					/**
					 * Gets the value for the private _objTableBoothAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_booth.user_id reverse relationship
					 * @return TableBooth[]
					 */
					return (array) $this->_objTableBoothAsUserArray;

				case '_TableEscrowAsUserIdFrom':
					/**
					 * Gets the value for the private _objTableEscrowAsUserIdFrom (Read-Only)
					 * if set due to an expansion on the table_escrow.user_id_from reverse relationship
					 * @return TableEscrow
					 */
					return $this->_objTableEscrowAsUserIdFrom;

				case '_TableEscrowAsUserIdFromArray':
					/**
					 * Gets the value for the private _objTableEscrowAsUserIdFromArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_escrow.user_id_from reverse relationship
					 * @return TableEscrow[]
					 */
					return (array) $this->_objTableEscrowAsUserIdFromArray;

				case '_TableEscrowAsUserIdTo':
					/**
					 * Gets the value for the private _objTableEscrowAsUserIdTo (Read-Only)
					 * if set due to an expansion on the table_escrow.user_id_to reverse relationship
					 * @return TableEscrow
					 */
					return $this->_objTableEscrowAsUserIdTo;

				case '_TableEscrowAsUserIdToArray':
					/**
					 * Gets the value for the private _objTableEscrowAsUserIdToArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_escrow.user_id_to reverse relationship
					 * @return TableEscrow[]
					 */
					return (array) $this->_objTableEscrowAsUserIdToArray;

				case '_TableFeedbackAsUser':
					/**
					 * Gets the value for the private _objTableFeedbackAsUser (Read-Only)
					 * if set due to an expansion on the table_feedback.user_id reverse relationship
					 * @return TableFeedback
					 */
					return $this->_objTableFeedbackAsUser;

				case '_TableFeedbackAsUserArray':
					/**
					 * Gets the value for the private _objTableFeedbackAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_feedback.user_id reverse relationship
					 * @return TableFeedback[]
					 */
					return (array) $this->_objTableFeedbackAsUserArray;

				case '_TableItemGetAsUser':
					/**
					 * Gets the value for the private _objTableItemGetAsUser (Read-Only)
					 * if set due to an expansion on the table_item_get.user_id reverse relationship
					 * @return TableItemGet
					 */
					return $this->_objTableItemGetAsUser;

				case '_TableItemGetAsUserArray':
					/**
					 * Gets the value for the private _objTableItemGetAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_item_get.user_id reverse relationship
					 * @return TableItemGet[]
					 */
					return (array) $this->_objTableItemGetAsUserArray;

				case '_TablePaypalRequestOutAsUser':
					/**
					 * Gets the value for the private _objTablePaypalRequestOutAsUser (Read-Only)
					 * if set due to an expansion on the table_paypal_request_out.user_id reverse relationship
					 * @return TablePaypalRequestOut
					 */
					return $this->_objTablePaypalRequestOutAsUser;

				case '_TablePaypalRequestOutAsUserArray':
					/**
					 * Gets the value for the private _objTablePaypalRequestOutAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_paypal_request_out.user_id reverse relationship
					 * @return TablePaypalRequestOut[]
					 */
					return (array) $this->_objTablePaypalRequestOutAsUserArray;

				case '_TablePointChargedAsUser':
					/**
					 * Gets the value for the private _objTablePointChargedAsUser (Read-Only)
					 * if set due to an expansion on the table_point_charged.user_id reverse relationship
					 * @return TablePointCharged
					 */
					return $this->_objTablePointChargedAsUser;

				case '_TablePointChargedAsUserArray':
					/**
					 * Gets the value for the private _objTablePointChargedAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_point_charged.user_id reverse relationship
					 * @return TablePointCharged[]
					 */
					return (array) $this->_objTablePointChargedAsUserArray;

				case '_TablePointInAsUser':
					/**
					 * Gets the value for the private _objTablePointInAsUser (Read-Only)
					 * if set due to an expansion on the table_point_in.user_id reverse relationship
					 * @return TablePointIn
					 */
					return $this->_objTablePointInAsUser;

				case '_TablePointInAsUserArray':
					/**
					 * Gets the value for the private _objTablePointInAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_point_in.user_id reverse relationship
					 * @return TablePointIn[]
					 */
					return (array) $this->_objTablePointInAsUserArray;

				case '_TablePointOutAsUser':
					/**
					 * Gets the value for the private _objTablePointOutAsUser (Read-Only)
					 * if set due to an expansion on the table_point_out.user_id reverse relationship
					 * @return TablePointOut
					 */
					return $this->_objTablePointOutAsUser;

				case '_TablePointOutAsUserArray':
					/**
					 * Gets the value for the private _objTablePointOutAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_point_out.user_id reverse relationship
					 * @return TablePointOut[]
					 */
					return (array) $this->_objTablePointOutAsUserArray;

				case '_TablePortfolioAsUser':
					/**
					 * Gets the value for the private _objTablePortfolioAsUser (Read-Only)
					 * if set due to an expansion on the table_portfolio.user_id reverse relationship
					 * @return TablePortfolio
					 */
					return $this->_objTablePortfolioAsUser;

				case '_TablePortfolioAsUserArray':
					/**
					 * Gets the value for the private _objTablePortfolioAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_portfolio.user_id reverse relationship
					 * @return TablePortfolio[]
					 */
					return (array) $this->_objTablePortfolioAsUserArray;

				case '_TablePrivateMessageAsUserIdFrom':
					/**
					 * Gets the value for the private _objTablePrivateMessageAsUserIdFrom (Read-Only)
					 * if set due to an expansion on the table_private_message.user_id_from reverse relationship
					 * @return TablePrivateMessage
					 */
					return $this->_objTablePrivateMessageAsUserIdFrom;

				case '_TablePrivateMessageAsUserIdFromArray':
					/**
					 * Gets the value for the private _objTablePrivateMessageAsUserIdFromArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_private_message.user_id_from reverse relationship
					 * @return TablePrivateMessage[]
					 */
					return (array) $this->_objTablePrivateMessageAsUserIdFromArray;

				case '_TablePrivateMessageAsUserIdTo':
					/**
					 * Gets the value for the private _objTablePrivateMessageAsUserIdTo (Read-Only)
					 * if set due to an expansion on the table_private_message.user_id_to reverse relationship
					 * @return TablePrivateMessage
					 */
					return $this->_objTablePrivateMessageAsUserIdTo;

				case '_TablePrivateMessageAsUserIdToArray':
					/**
					 * Gets the value for the private _objTablePrivateMessageAsUserIdToArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_private_message.user_id_to reverse relationship
					 * @return TablePrivateMessage[]
					 */
					return (array) $this->_objTablePrivateMessageAsUserIdToArray;

				case '_TableProjectAsUser':
					/**
					 * Gets the value for the private _objTableProjectAsUser (Read-Only)
					 * if set due to an expansion on the table_project.user_id reverse relationship
					 * @return TableProject
					 */
					return $this->_objTableProjectAsUser;

				case '_TableProjectAsUserArray':
					/**
					 * Gets the value for the private _objTableProjectAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project.user_id reverse relationship
					 * @return TableProject[]
					 */
					return (array) $this->_objTableProjectAsUserArray;

				case '_TableProjectAsWonUser':
					/**
					 * Gets the value for the private _objTableProjectAsWonUser (Read-Only)
					 * if set due to an expansion on the table_project.won_user_id reverse relationship
					 * @return TableProject
					 */
					return $this->_objTableProjectAsWonUser;

				case '_TableProjectAsWonUserArray':
					/**
					 * Gets the value for the private _objTableProjectAsWonUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project.won_user_id reverse relationship
					 * @return TableProject[]
					 */
					return (array) $this->_objTableProjectAsWonUserArray;

				case '_TableProjectAttachmentAsUser':
					/**
					 * Gets the value for the private _objTableProjectAttachmentAsUser (Read-Only)
					 * if set due to an expansion on the table_project_attachment.user_id reverse relationship
					 * @return TableProjectAttachment
					 */
					return $this->_objTableProjectAttachmentAsUser;

				case '_TableProjectAttachmentAsUserArray':
					/**
					 * Gets the value for the private _objTableProjectAttachmentAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_attachment.user_id reverse relationship
					 * @return TableProjectAttachment[]
					 */
					return (array) $this->_objTableProjectAttachmentAsUserArray;

				case '_TableProjectBidAsUser':
					/**
					 * Gets the value for the private _objTableProjectBidAsUser (Read-Only)
					 * if set due to an expansion on the table_project_bid.user_id reverse relationship
					 * @return TableProjectBid
					 */
					return $this->_objTableProjectBidAsUser;

				case '_TableProjectBidAsUserArray':
					/**
					 * Gets the value for the private _objTableProjectBidAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_bid.user_id reverse relationship
					 * @return TableProjectBid[]
					 */
					return (array) $this->_objTableProjectBidAsUserArray;

				case '_TableProjectCancelAsUser':
					/**
					 * Gets the value for the private _objTableProjectCancelAsUser (Read-Only)
					 * if set due to an expansion on the table_project_cancel.user_id reverse relationship
					 * @return TableProjectCancel
					 */
					return $this->_objTableProjectCancelAsUser;

				case '_TableProjectCancelAsUserArray':
					/**
					 * Gets the value for the private _objTableProjectCancelAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_cancel.user_id reverse relationship
					 * @return TableProjectCancel[]
					 */
					return (array) $this->_objTableProjectCancelAsUserArray;

				case '_TableProjectEditAsUser':
					/**
					 * Gets the value for the private _objTableProjectEditAsUser (Read-Only)
					 * if set due to an expansion on the table_project_edit.user_id reverse relationship
					 * @return TableProjectEdit
					 */
					return $this->_objTableProjectEditAsUser;

				case '_TableProjectEditAsUserArray':
					/**
					 * Gets the value for the private _objTableProjectEditAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_edit.user_id reverse relationship
					 * @return TableProjectEdit[]
					 */
					return (array) $this->_objTableProjectEditAsUserArray;

				case '_TableProjectMessageAsUser':
					/**
					 * Gets the value for the private _objTableProjectMessageAsUser (Read-Only)
					 * if set due to an expansion on the table_project_message.user_id reverse relationship
					 * @return TableProjectMessage
					 */
					return $this->_objTableProjectMessageAsUser;

				case '_TableProjectMessageAsUserArray':
					/**
					 * Gets the value for the private _objTableProjectMessageAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_message.user_id reverse relationship
					 * @return TableProjectMessage[]
					 */
					return (array) $this->_objTableProjectMessageAsUserArray;

				case '_TableProjectRequestCancelAsBuyer':
					/**
					 * Gets the value for the private _objTableProjectRequestCancelAsBuyer (Read-Only)
					 * if set due to an expansion on the table_project_request_cancel.buyer_id reverse relationship
					 * @return TableProjectRequestCancel
					 */
					return $this->_objTableProjectRequestCancelAsBuyer;

				case '_TableProjectRequestCancelAsBuyerArray':
					/**
					 * Gets the value for the private _objTableProjectRequestCancelAsBuyerArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_request_cancel.buyer_id reverse relationship
					 * @return TableProjectRequestCancel[]
					 */
					return (array) $this->_objTableProjectRequestCancelAsBuyerArray;

				case '_TableProjectRequestCancelAsProvider':
					/**
					 * Gets the value for the private _objTableProjectRequestCancelAsProvider (Read-Only)
					 * if set due to an expansion on the table_project_request_cancel.provider_id reverse relationship
					 * @return TableProjectRequestCancel
					 */
					return $this->_objTableProjectRequestCancelAsProvider;

				case '_TableProjectRequestCancelAsProviderArray':
					/**
					 * Gets the value for the private _objTableProjectRequestCancelAsProviderArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_request_cancel.provider_id reverse relationship
					 * @return TableProjectRequestCancel[]
					 */
					return (array) $this->_objTableProjectRequestCancelAsProviderArray;

				case '_TableProjectRequestCompleteAsBuyer':
					/**
					 * Gets the value for the private _objTableProjectRequestCompleteAsBuyer (Read-Only)
					 * if set due to an expansion on the table_project_request_complete.buyer_id reverse relationship
					 * @return TableProjectRequestComplete
					 */
					return $this->_objTableProjectRequestCompleteAsBuyer;

				case '_TableProjectRequestCompleteAsBuyerArray':
					/**
					 * Gets the value for the private _objTableProjectRequestCompleteAsBuyerArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_request_complete.buyer_id reverse relationship
					 * @return TableProjectRequestComplete[]
					 */
					return (array) $this->_objTableProjectRequestCompleteAsBuyerArray;

				case '_TableProjectRequestCompleteAsProvider':
					/**
					 * Gets the value for the private _objTableProjectRequestCompleteAsProvider (Read-Only)
					 * if set due to an expansion on the table_project_request_complete.provider_id reverse relationship
					 * @return TableProjectRequestComplete
					 */
					return $this->_objTableProjectRequestCompleteAsProvider;

				case '_TableProjectRequestCompleteAsProviderArray':
					/**
					 * Gets the value for the private _objTableProjectRequestCompleteAsProviderArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_request_complete.provider_id reverse relationship
					 * @return TableProjectRequestComplete[]
					 */
					return (array) $this->_objTableProjectRequestCompleteAsProviderArray;

				case '_TableProjectWonAsBuyer':
					/**
					 * Gets the value for the private _objTableProjectWonAsBuyer (Read-Only)
					 * if set due to an expansion on the table_project_won.buyer_id reverse relationship
					 * @return TableProjectWon
					 */
					return $this->_objTableProjectWonAsBuyer;

				case '_TableProjectWonAsBuyerArray':
					/**
					 * Gets the value for the private _objTableProjectWonAsBuyerArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_won.buyer_id reverse relationship
					 * @return TableProjectWon[]
					 */
					return (array) $this->_objTableProjectWonAsBuyerArray;

				case '_TableProjectWonAsProvider':
					/**
					 * Gets the value for the private _objTableProjectWonAsProvider (Read-Only)
					 * if set due to an expansion on the table_project_won.provider_id reverse relationship
					 * @return TableProjectWon
					 */
					return $this->_objTableProjectWonAsProvider;

				case '_TableProjectWonAsProviderArray':
					/**
					 * Gets the value for the private _objTableProjectWonAsProviderArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_project_won.provider_id reverse relationship
					 * @return TableProjectWon[]
					 */
					return (array) $this->_objTableProjectWonAsProviderArray;

				case '_TableTransactionAsUser':
					/**
					 * Gets the value for the private _objTableTransactionAsUser (Read-Only)
					 * if set due to an expansion on the table_transaction.user_id reverse relationship
					 * @return TableTransaction
					 */
					return $this->_objTableTransactionAsUser;

				case '_TableTransactionAsUserArray':
					/**
					 * Gets the value for the private _objTableTransactionAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_transaction.user_id reverse relationship
					 * @return TableTransaction[]
					 */
					return (array) $this->_objTableTransactionAsUserArray;

				case '_TableUserAddressAsUser':
					/**
					 * Gets the value for the private _objTableUserAddressAsUser (Read-Only)
					 * if set due to an expansion on the table_user_address.user_id reverse relationship
					 * @return TableUserAddress
					 */
					return $this->_objTableUserAddressAsUser;

				case '_TableUserAddressAsUserArray':
					/**
					 * Gets the value for the private _objTableUserAddressAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_user_address.user_id reverse relationship
					 * @return TableUserAddress[]
					 */
					return (array) $this->_objTableUserAddressAsUserArray;

				case '_TableUserItemAsUser':
					/**
					 * Gets the value for the private _objTableUserItemAsUser (Read-Only)
					 * if set due to an expansion on the table_user_item.user_id reverse relationship
					 * @return TableUserItem
					 */
					return $this->_objTableUserItemAsUser;

				case '_TableUserItemAsUserArray':
					/**
					 * Gets the value for the private _objTableUserItemAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_user_item.user_id reverse relationship
					 * @return TableUserItem[]
					 */
					return (array) $this->_objTableUserItemAsUserArray;

				case '_TableUserProfileAsUser':
					/**
					 * Gets the value for the private _objTableUserProfileAsUser (Read-Only)
					 * if set due to an expansion on the table_user_profile.user_id reverse relationship
					 * @return TableUserProfile
					 */
					return $this->_objTableUserProfileAsUser;

				case '_TableUserProfileAsUserArray':
					/**
					 * Gets the value for the private _objTableUserProfileAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_user_profile.user_id reverse relationship
					 * @return TableUserProfile[]
					 */
					return (array) $this->_objTableUserProfileAsUserArray;

				case '_TableUserStatAsUser':
					/**
					 * Gets the value for the private _objTableUserStatAsUser (Read-Only)
					 * if set due to an expansion on the table_user_stat.user_id reverse relationship
					 * @return TableUserStat
					 */
					return $this->_objTableUserStatAsUser;

				case '_TableUserStatAsUserArray':
					/**
					 * Gets the value for the private _objTableUserStatAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_user_stat.user_id reverse relationship
					 * @return TableUserStat[]
					 */
					return (array) $this->_objTableUserStatAsUserArray;

				case '_TableViolationReportAsUser':
					/**
					 * Gets the value for the private _objTableViolationReportAsUser (Read-Only)
					 * if set due to an expansion on the table_violation_report.user_id reverse relationship
					 * @return TableViolationReport
					 */
					return $this->_objTableViolationReportAsUser;

				case '_TableViolationReportAsUserArray':
					/**
					 * Gets the value for the private _objTableViolationReportAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_violation_report.user_id reverse relationship
					 * @return TableViolationReport[]
					 */
					return (array) $this->_objTableViolationReportAsUserArray;

				case '_TableWatchListAsUser':
					/**
					 * Gets the value for the private _objTableWatchListAsUser (Read-Only)
					 * if set due to an expansion on the table_watch_list.user_id reverse relationship
					 * @return TableWatchList
					 */
					return $this->_objTableWatchListAsUser;

				case '_TableWatchListAsUserArray':
					/**
					 * Gets the value for the private _objTableWatchListAsUserArray (Read-Only)
					 * if set due to an ExpandAsArray on the table_watch_list.user_id reverse relationship
					 * @return TableWatchList[]
					 */
					return (array) $this->_objTableWatchListAsUserArray;


				case '__Restored':
					return $this->__blnRestored;

				default:
					try {
						return parent::__get($strName);
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}
			}
		}

				/**
		 * Override method to perform a property "Set"
		 * This will set the property $strName to be $mixValue
		 *
		 * @param string $strName Name of the property to set
		 * @param string $mixValue New value of the property
		 * @return mixed
		 */
		public function __set($strName, $mixValue) {
			switch ($strName) {
				///////////////////
				// Member Variables
				///////////////////
				case 'CategoryId':
					/**
					 * Sets the value for intCategoryId 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intCategoryId = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'SubcategoryId':
					/**
					 * Sets the value for intSubcategoryId 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intSubcategoryId = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'UserName':
					/**
					 * Sets the value for strUserName (Unique)
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strUserName = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Password':
					/**
					 * Sets the value for strPassword (Not Null)
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strPassword = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Firstname':
					/**
					 * Sets the value for strFirstname 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strFirstname = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Lastname':
					/**
					 * Sets the value for strLastname 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strLastname = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Companyname':
					/**
					 * Sets the value for strCompanyname 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strCompanyname = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Mail':
					/**
					 * Sets the value for strMail (Not Null)
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strMail = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Mail2':
					/**
					 * Sets the value for strMail2 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strMail2 = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Ip':
					/**
					 * Sets the value for strIp 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strIp = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Country':
					/**
					 * Sets the value for strCountry 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strCountry = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'City':
					/**
					 * Sets the value for strCity 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strCity = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Address1':
					/**
					 * Sets the value for strAddress1 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strAddress1 = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Address2':
					/**
					 * Sets the value for strAddress2 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strAddress2 = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PostalCode':
					/**
					 * Sets the value for strPostalCode 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strPostalCode = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Phone':
					/**
					 * Sets the value for strPhone 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strPhone = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Fax':
					/**
					 * Sets the value for strFax 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strFax = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'LoginDate':
					/**
					 * Sets the value for dttLoginDate 
					 * @param QDateTime $mixValue
					 * @return QDateTime
					 */
					try {
						return ($this->dttLoginDate = QType::Cast($mixValue, QType::DateTime));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'LogoutDate':
					/**
					 * Sets the value for dttLogoutDate 
					 * @param QDateTime $mixValue
					 * @return QDateTime
					 */
					try {
						return ($this->dttLogoutDate = QType::Cast($mixValue, QType::DateTime));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'TimeupDate':
					/**
					 * Sets the value for dttTimeupDate 
					 * @param QDateTime $mixValue
					 * @return QDateTime
					 */
					try {
						return ($this->dttTimeupDate = QType::Cast($mixValue, QType::DateTime));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'UserType':
					/**
					 * Sets the value for intUserType 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intUserType = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'UserLevel':
					/**
					 * Sets the value for intUserLevel 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intUserLevel = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'BoothCount':
					/**
					 * Sets the value for intBoothCount 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intBoothCount = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PortfolioCount':
					/**
					 * Sets the value for intPortfolioCount 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intPortfolioCount = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PointBalance':
					/**
					 * Sets the value for intPointBalance (Not Null)
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intPointBalance = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PointInTotal':
					/**
					 * Sets the value for intPointInTotal 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intPointInTotal = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PointOutTotal':
					/**
					 * Sets the value for intPointOutTotal 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intPointOutTotal = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PointChargedTotal':
					/**
					 * Sets the value for intPointChargedTotal 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intPointChargedTotal = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'LanguageId':
					/**
					 * Sets the value for intLanguageId 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intLanguageId = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'SendmailNews':
					/**
					 * Sets the value for strSendmailNews 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strSendmailNews = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'SendmailByKeywordInNewProject':
					/**
					 * Sets the value for strSendmailByKeywordInNewProject 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strSendmailByKeywordInNewProject = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'SendmailByNewBid':
					/**
					 * Sets the value for strSendmailByNewBid 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strSendmailByNewBid = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Keyword':
					/**
					 * Sets the value for strKeyword 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strKeyword = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer':
					/**
					 * Sets the value for fltRateAsBuyer 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider':
					/**
					 * Sets the value for fltRateAsProvider 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer6month':
					/**
					 * Sets the value for fltRateAsBuyer6month 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer6month = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider6month':
					/**
					 * Sets the value for fltRateAsProvider6month 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider6month = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Authorized':
					/**
					 * Sets the value for strAuthorized 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strAuthorized = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'AuthorizationCode':
					/**
					 * Sets the value for strAuthorizationCode 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strAuthorizationCode = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'AuthorizedDate':
					/**
					 * Sets the value for dttAuthorizedDate 
					 * @param QDateTime $mixValue
					 * @return QDateTime
					 */
					try {
						return ($this->dttAuthorizedDate = QType::Cast($mixValue, QType::DateTime));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Active':
					/**
					 * Sets the value for strActive (Not Null)
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strActive = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Suspended':
					/**
					 * Sets the value for strSuspended (Not Null)
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strSuspended = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'AffiliatorId':
					/**
					 * Sets the value for intAffiliatorId 
					 * @param integer $mixValue
					 * @return integer
					 */
					try {
						return ($this->intAffiliatorId = QType::Cast($mixValue, QType::Integer));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'AffliatorCode':
					/**
					 * Sets the value for strAffliatorCode 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strAffliatorCode = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'FirstnameKana':
					/**
					 * Sets the value for strFirstnameKana 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strFirstnameKana = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'LastnameKana':
					/**
					 * Sets the value for strLastnameKana 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strLastnameKana = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'Department':
					/**
					 * Sets the value for strDepartment 
					 * @param string $mixValue
					 * @return string
					 */
					try {
						return ($this->strDepartment = QType::Cast($mixValue, QType::String));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RegisterDate':
					/**
					 * Sets the value for dttRegisterDate 
					 * @param QDateTime $mixValue
					 * @return QDateTime
					 */
					try {
						return ($this->dttRegisterDate = QType::Cast($mixValue, QType::DateTime));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'PercentageWillCharge':
					/**
					 * Sets the value for fltPercentageWillCharge (Not Null)
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltPercentageWillCharge = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'LastAccessDate':
					/**
					 * Sets the value for dttLastAccessDate 
					 * @param QDateTime $mixValue
					 * @return QDateTime
					 */
					try {
						return ($this->dttLastAccessDate = QType::Cast($mixValue, QType::DateTime));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer1':
					/**
					 * Sets the value for fltRateAsBuyer1 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer1 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer2':
					/**
					 * Sets the value for fltRateAsBuyer2 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer2 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer3':
					/**
					 * Sets the value for fltRateAsBuyer3 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer3 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer4':
					/**
					 * Sets the value for fltRateAsBuyer4 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer4 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer5':
					/**
					 * Sets the value for fltRateAsBuyer5 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer5 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsBuyer6':
					/**
					 * Sets the value for fltRateAsBuyer6 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsBuyer6 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider1':
					/**
					 * Sets the value for fltRateAsProvider1 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider1 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider2':
					/**
					 * Sets the value for fltRateAsProvider2 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider2 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider3':
					/**
					 * Sets the value for fltRateAsProvider3 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider3 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider4':
					/**
					 * Sets the value for fltRateAsProvider4 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider4 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider5':
					/**
					 * Sets the value for fltRateAsProvider5 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider5 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}

				case 'RateAsProvider6':
					/**
					 * Sets the value for fltRateAsProvider6 
					 * @param double $mixValue
					 * @return double
					 */
					try {
						return ($this->fltRateAsProvider6 = QType::Cast($mixValue, QType::Float));
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}


				///////////////////
				// Member Objects
				///////////////////
				default:
					try {
						return parent::__set($strName, $mixValue);
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}
			}
		}

		/**
		 * Lookup a VirtualAttribute value (if applicable).  Returns NULL if none found.
		 * @param string $strName
		 * @return string
		 */
		public function GetVirtualAttribute($strName) {
			if (array_key_exists($strName, $this->__strVirtualAttributeArray))
				return $this->__strVirtualAttributeArray[$strName];
			return null;
		}



		///////////////////////////////
		// ASSOCIATED OBJECTS' METHODS
		///////////////////////////////

			
		
		// Related Objects' Methods for TableBankAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableBanksAsUser as an array of TableBank objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableBank[]
		*/ 
		public function GetTableBankAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableBank::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableBanksAsUser
		 * @return int
		*/ 
		public function CountTableBanksAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableBank::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableBankAsUser
		 * @param TableBank $objTableBank
		 * @return void
		*/ 
		public function AssociateTableBankAsUser(TableBank $objTableBank) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBankAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBank->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBankAsUser on this TableUserProject with an unsaved TableBank.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBank->Id) . '
			');
		}

		/**
		 * Unassociates a TableBankAsUser
		 * @param TableBank $objTableBank
		 * @return void
		*/ 
		public function UnassociateTableBankAsUser(TableBank $objTableBank) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBank->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankAsUser on this TableUserProject with an unsaved TableBank.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBank->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableBanksAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableBanksAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableBankAsUser
		 * @param TableBank $objTableBank
		 * @return void
		*/ 
		public function DeleteAssociatedTableBankAsUser(TableBank $objTableBank) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBank->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankAsUser on this TableUserProject with an unsaved TableBank.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_bank`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBank->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableBanksAsUser
		 * @return void
		*/ 
		public function DeleteAllTableBanksAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_bank`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableBankRequestInAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableBankRequestInsAsUser as an array of TableBankRequestIn objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableBankRequestIn[]
		*/ 
		public function GetTableBankRequestInAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableBankRequestIn::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableBankRequestInsAsUser
		 * @return int
		*/ 
		public function CountTableBankRequestInsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableBankRequestIn::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableBankRequestInAsUser
		 * @param TableBankRequestIn $objTableBankRequestIn
		 * @return void
		*/ 
		public function AssociateTableBankRequestInAsUser(TableBankRequestIn $objTableBankRequestIn) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBankRequestInAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBankRequestIn->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBankRequestInAsUser on this TableUserProject with an unsaved TableBankRequestIn.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank_request_in`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBankRequestIn->Id) . '
			');
		}

		/**
		 * Unassociates a TableBankRequestInAsUser
		 * @param TableBankRequestIn $objTableBankRequestIn
		 * @return void
		*/ 
		public function UnassociateTableBankRequestInAsUser(TableBankRequestIn $objTableBankRequestIn) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestInAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBankRequestIn->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestInAsUser on this TableUserProject with an unsaved TableBankRequestIn.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank_request_in`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBankRequestIn->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableBankRequestInsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableBankRequestInsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestInAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank_request_in`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableBankRequestInAsUser
		 * @param TableBankRequestIn $objTableBankRequestIn
		 * @return void
		*/ 
		public function DeleteAssociatedTableBankRequestInAsUser(TableBankRequestIn $objTableBankRequestIn) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestInAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBankRequestIn->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestInAsUser on this TableUserProject with an unsaved TableBankRequestIn.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_bank_request_in`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBankRequestIn->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableBankRequestInsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableBankRequestInsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestInAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_bank_request_in`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableBankRequestOutAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableBankRequestOutsAsUser as an array of TableBankRequestOut objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableBankRequestOut[]
		*/ 
		public function GetTableBankRequestOutAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableBankRequestOut::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableBankRequestOutsAsUser
		 * @return int
		*/ 
		public function CountTableBankRequestOutsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableBankRequestOut::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableBankRequestOutAsUser
		 * @param TableBankRequestOut $objTableBankRequestOut
		 * @return void
		*/ 
		public function AssociateTableBankRequestOutAsUser(TableBankRequestOut $objTableBankRequestOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBankRequestOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBankRequestOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBankRequestOutAsUser on this TableUserProject with an unsaved TableBankRequestOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank_request_out`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBankRequestOut->Id) . '
			');
		}

		/**
		 * Unassociates a TableBankRequestOutAsUser
		 * @param TableBankRequestOut $objTableBankRequestOut
		 * @return void
		*/ 
		public function UnassociateTableBankRequestOutAsUser(TableBankRequestOut $objTableBankRequestOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBankRequestOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestOutAsUser on this TableUserProject with an unsaved TableBankRequestOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank_request_out`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBankRequestOut->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableBankRequestOutsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableBankRequestOutsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestOutAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_bank_request_out`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableBankRequestOutAsUser
		 * @param TableBankRequestOut $objTableBankRequestOut
		 * @return void
		*/ 
		public function DeleteAssociatedTableBankRequestOutAsUser(TableBankRequestOut $objTableBankRequestOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBankRequestOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestOutAsUser on this TableUserProject with an unsaved TableBankRequestOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_bank_request_out`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBankRequestOut->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableBankRequestOutsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableBankRequestOutsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBankRequestOutAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_bank_request_out`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableBoothAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableBoothsAsUser as an array of TableBooth objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableBooth[]
		*/ 
		public function GetTableBoothAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableBooth::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableBoothsAsUser
		 * @return int
		*/ 
		public function CountTableBoothsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableBooth::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableBoothAsUser
		 * @param TableBooth $objTableBooth
		 * @return void
		*/ 
		public function AssociateTableBoothAsUser(TableBooth $objTableBooth) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBoothAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBooth->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableBoothAsUser on this TableUserProject with an unsaved TableBooth.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_booth`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBooth->Id) . '
			');
		}

		/**
		 * Unassociates a TableBoothAsUser
		 * @param TableBooth $objTableBooth
		 * @return void
		*/ 
		public function UnassociateTableBoothAsUser(TableBooth $objTableBooth) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBoothAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBooth->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBoothAsUser on this TableUserProject with an unsaved TableBooth.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_booth`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBooth->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableBoothsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableBoothsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBoothAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_booth`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableBoothAsUser
		 * @param TableBooth $objTableBooth
		 * @return void
		*/ 
		public function DeleteAssociatedTableBoothAsUser(TableBooth $objTableBooth) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBoothAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableBooth->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBoothAsUser on this TableUserProject with an unsaved TableBooth.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_booth`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableBooth->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableBoothsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableBoothsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableBoothAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_booth`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableEscrowAsUserIdFrom
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableEscrowsAsUserIdFrom as an array of TableEscrow objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableEscrow[]
		*/ 
		public function GetTableEscrowAsUserIdFromArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableEscrow::LoadArrayByUserIdFrom($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableEscrowsAsUserIdFrom
		 * @return int
		*/ 
		public function CountTableEscrowsAsUserIdFrom() {
			if ((is_null($this->intId)))
				return 0;

			return TableEscrow::CountByUserIdFrom($this->intId);
		}

		/**
		 * Associates a TableEscrowAsUserIdFrom
		 * @param TableEscrow $objTableEscrow
		 * @return void
		*/ 
		public function AssociateTableEscrowAsUserIdFrom(TableEscrow $objTableEscrow) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableEscrowAsUserIdFrom on this unsaved TableUserProject.');
			if ((is_null($objTableEscrow->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableEscrowAsUserIdFrom on this TableUserProject with an unsaved TableEscrow.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_escrow`
				SET
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableEscrow->Id) . '
			');
		}

		/**
		 * Unassociates a TableEscrowAsUserIdFrom
		 * @param TableEscrow $objTableEscrow
		 * @return void
		*/ 
		public function UnassociateTableEscrowAsUserIdFrom(TableEscrow $objTableEscrow) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdFrom on this unsaved TableUserProject.');
			if ((is_null($objTableEscrow->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdFrom on this TableUserProject with an unsaved TableEscrow.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_escrow`
				SET
					`user_id_from` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableEscrow->Id) . ' AND
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableEscrowsAsUserIdFrom
		 * @return void
		*/ 
		public function UnassociateAllTableEscrowsAsUserIdFrom() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdFrom on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_escrow`
				SET
					`user_id_from` = null
				WHERE
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableEscrowAsUserIdFrom
		 * @param TableEscrow $objTableEscrow
		 * @return void
		*/ 
		public function DeleteAssociatedTableEscrowAsUserIdFrom(TableEscrow $objTableEscrow) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdFrom on this unsaved TableUserProject.');
			if ((is_null($objTableEscrow->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdFrom on this TableUserProject with an unsaved TableEscrow.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_escrow`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableEscrow->Id) . ' AND
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableEscrowsAsUserIdFrom
		 * @return void
		*/ 
		public function DeleteAllTableEscrowsAsUserIdFrom() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdFrom on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_escrow`
				WHERE
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableEscrowAsUserIdTo
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableEscrowsAsUserIdTo as an array of TableEscrow objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableEscrow[]
		*/ 
		public function GetTableEscrowAsUserIdToArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableEscrow::LoadArrayByUserIdTo($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableEscrowsAsUserIdTo
		 * @return int
		*/ 
		public function CountTableEscrowsAsUserIdTo() {
			if ((is_null($this->intId)))
				return 0;

			return TableEscrow::CountByUserIdTo($this->intId);
		}

		/**
		 * Associates a TableEscrowAsUserIdTo
		 * @param TableEscrow $objTableEscrow
		 * @return void
		*/ 
		public function AssociateTableEscrowAsUserIdTo(TableEscrow $objTableEscrow) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableEscrowAsUserIdTo on this unsaved TableUserProject.');
			if ((is_null($objTableEscrow->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableEscrowAsUserIdTo on this TableUserProject with an unsaved TableEscrow.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_escrow`
				SET
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableEscrow->Id) . '
			');
		}

		/**
		 * Unassociates a TableEscrowAsUserIdTo
		 * @param TableEscrow $objTableEscrow
		 * @return void
		*/ 
		public function UnassociateTableEscrowAsUserIdTo(TableEscrow $objTableEscrow) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdTo on this unsaved TableUserProject.');
			if ((is_null($objTableEscrow->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdTo on this TableUserProject with an unsaved TableEscrow.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_escrow`
				SET
					`user_id_to` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableEscrow->Id) . ' AND
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableEscrowsAsUserIdTo
		 * @return void
		*/ 
		public function UnassociateAllTableEscrowsAsUserIdTo() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdTo on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_escrow`
				SET
					`user_id_to` = null
				WHERE
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableEscrowAsUserIdTo
		 * @param TableEscrow $objTableEscrow
		 * @return void
		*/ 
		public function DeleteAssociatedTableEscrowAsUserIdTo(TableEscrow $objTableEscrow) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdTo on this unsaved TableUserProject.');
			if ((is_null($objTableEscrow->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdTo on this TableUserProject with an unsaved TableEscrow.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_escrow`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableEscrow->Id) . ' AND
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableEscrowsAsUserIdTo
		 * @return void
		*/ 
		public function DeleteAllTableEscrowsAsUserIdTo() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableEscrowAsUserIdTo on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_escrow`
				WHERE
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableFeedbackAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableFeedbacksAsUser as an array of TableFeedback objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableFeedback[]
		*/ 
		public function GetTableFeedbackAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableFeedback::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableFeedbacksAsUser
		 * @return int
		*/ 
		public function CountTableFeedbacksAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableFeedback::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableFeedbackAsUser
		 * @param TableFeedback $objTableFeedback
		 * @return void
		*/ 
		public function AssociateTableFeedbackAsUser(TableFeedback $objTableFeedback) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableFeedbackAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableFeedback->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableFeedbackAsUser on this TableUserProject with an unsaved TableFeedback.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_feedback`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableFeedback->Id) . '
			');
		}

		/**
		 * Unassociates a TableFeedbackAsUser
		 * @param TableFeedback $objTableFeedback
		 * @return void
		*/ 
		public function UnassociateTableFeedbackAsUser(TableFeedback $objTableFeedback) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableFeedbackAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableFeedback->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableFeedbackAsUser on this TableUserProject with an unsaved TableFeedback.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_feedback`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableFeedback->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableFeedbacksAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableFeedbacksAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableFeedbackAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_feedback`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableFeedbackAsUser
		 * @param TableFeedback $objTableFeedback
		 * @return void
		*/ 
		public function DeleteAssociatedTableFeedbackAsUser(TableFeedback $objTableFeedback) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableFeedbackAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableFeedback->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableFeedbackAsUser on this TableUserProject with an unsaved TableFeedback.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_feedback`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableFeedback->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableFeedbacksAsUser
		 * @return void
		*/ 
		public function DeleteAllTableFeedbacksAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableFeedbackAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_feedback`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableItemGetAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableItemGetsAsUser as an array of TableItemGet objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableItemGet[]
		*/ 
		public function GetTableItemGetAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableItemGet::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableItemGetsAsUser
		 * @return int
		*/ 
		public function CountTableItemGetsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableItemGet::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableItemGetAsUser
		 * @param TableItemGet $objTableItemGet
		 * @return void
		*/ 
		public function AssociateTableItemGetAsUser(TableItemGet $objTableItemGet) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableItemGetAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableItemGet->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableItemGetAsUser on this TableUserProject with an unsaved TableItemGet.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_item_get`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableItemGet->Id) . '
			');
		}

		/**
		 * Unassociates a TableItemGetAsUser
		 * @param TableItemGet $objTableItemGet
		 * @return void
		*/ 
		public function UnassociateTableItemGetAsUser(TableItemGet $objTableItemGet) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableItemGetAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableItemGet->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableItemGetAsUser on this TableUserProject with an unsaved TableItemGet.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_item_get`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableItemGet->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableItemGetsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableItemGetsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableItemGetAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_item_get`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableItemGetAsUser
		 * @param TableItemGet $objTableItemGet
		 * @return void
		*/ 
		public function DeleteAssociatedTableItemGetAsUser(TableItemGet $objTableItemGet) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableItemGetAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableItemGet->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableItemGetAsUser on this TableUserProject with an unsaved TableItemGet.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_item_get`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableItemGet->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableItemGetsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableItemGetsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableItemGetAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_item_get`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePaypalRequestOutAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePaypalRequestOutsAsUser as an array of TablePaypalRequestOut objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePaypalRequestOut[]
		*/ 
		public function GetTablePaypalRequestOutAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePaypalRequestOut::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePaypalRequestOutsAsUser
		 * @return int
		*/ 
		public function CountTablePaypalRequestOutsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TablePaypalRequestOut::CountByUserId($this->intId);
		}

		/**
		 * Associates a TablePaypalRequestOutAsUser
		 * @param TablePaypalRequestOut $objTablePaypalRequestOut
		 * @return void
		*/ 
		public function AssociateTablePaypalRequestOutAsUser(TablePaypalRequestOut $objTablePaypalRequestOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePaypalRequestOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePaypalRequestOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePaypalRequestOutAsUser on this TableUserProject with an unsaved TablePaypalRequestOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_paypal_request_out`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePaypalRequestOut->Id) . '
			');
		}

		/**
		 * Unassociates a TablePaypalRequestOutAsUser
		 * @param TablePaypalRequestOut $objTablePaypalRequestOut
		 * @return void
		*/ 
		public function UnassociateTablePaypalRequestOutAsUser(TablePaypalRequestOut $objTablePaypalRequestOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePaypalRequestOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePaypalRequestOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePaypalRequestOutAsUser on this TableUserProject with an unsaved TablePaypalRequestOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_paypal_request_out`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePaypalRequestOut->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePaypalRequestOutsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTablePaypalRequestOutsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePaypalRequestOutAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_paypal_request_out`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePaypalRequestOutAsUser
		 * @param TablePaypalRequestOut $objTablePaypalRequestOut
		 * @return void
		*/ 
		public function DeleteAssociatedTablePaypalRequestOutAsUser(TablePaypalRequestOut $objTablePaypalRequestOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePaypalRequestOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePaypalRequestOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePaypalRequestOutAsUser on this TableUserProject with an unsaved TablePaypalRequestOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_paypal_request_out`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePaypalRequestOut->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePaypalRequestOutsAsUser
		 * @return void
		*/ 
		public function DeleteAllTablePaypalRequestOutsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePaypalRequestOutAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_paypal_request_out`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePointChargedAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePointChargedsAsUser as an array of TablePointCharged objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePointCharged[]
		*/ 
		public function GetTablePointChargedAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePointCharged::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePointChargedsAsUser
		 * @return int
		*/ 
		public function CountTablePointChargedsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TablePointCharged::CountByUserId($this->intId);
		}

		/**
		 * Associates a TablePointChargedAsUser
		 * @param TablePointCharged $objTablePointCharged
		 * @return void
		*/ 
		public function AssociateTablePointChargedAsUser(TablePointCharged $objTablePointCharged) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePointChargedAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointCharged->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePointChargedAsUser on this TableUserProject with an unsaved TablePointCharged.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_charged`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointCharged->Id) . '
			');
		}

		/**
		 * Unassociates a TablePointChargedAsUser
		 * @param TablePointCharged $objTablePointCharged
		 * @return void
		*/ 
		public function UnassociateTablePointChargedAsUser(TablePointCharged $objTablePointCharged) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointChargedAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointCharged->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointChargedAsUser on this TableUserProject with an unsaved TablePointCharged.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_charged`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointCharged->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePointChargedsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTablePointChargedsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointChargedAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_charged`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePointChargedAsUser
		 * @param TablePointCharged $objTablePointCharged
		 * @return void
		*/ 
		public function DeleteAssociatedTablePointChargedAsUser(TablePointCharged $objTablePointCharged) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointChargedAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointCharged->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointChargedAsUser on this TableUserProject with an unsaved TablePointCharged.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_point_charged`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointCharged->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePointChargedsAsUser
		 * @return void
		*/ 
		public function DeleteAllTablePointChargedsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointChargedAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_point_charged`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePointInAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePointInsAsUser as an array of TablePointIn objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePointIn[]
		*/ 
		public function GetTablePointInAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePointIn::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePointInsAsUser
		 * @return int
		*/ 
		public function CountTablePointInsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TablePointIn::CountByUserId($this->intId);
		}

		/**
		 * Associates a TablePointInAsUser
		 * @param TablePointIn $objTablePointIn
		 * @return void
		*/ 
		public function AssociateTablePointInAsUser(TablePointIn $objTablePointIn) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePointInAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointIn->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePointInAsUser on this TableUserProject with an unsaved TablePointIn.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_in`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointIn->Id) . '
			');
		}

		/**
		 * Unassociates a TablePointInAsUser
		 * @param TablePointIn $objTablePointIn
		 * @return void
		*/ 
		public function UnassociateTablePointInAsUser(TablePointIn $objTablePointIn) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointInAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointIn->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointInAsUser on this TableUserProject with an unsaved TablePointIn.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_in`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointIn->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePointInsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTablePointInsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointInAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_in`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePointInAsUser
		 * @param TablePointIn $objTablePointIn
		 * @return void
		*/ 
		public function DeleteAssociatedTablePointInAsUser(TablePointIn $objTablePointIn) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointInAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointIn->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointInAsUser on this TableUserProject with an unsaved TablePointIn.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_point_in`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointIn->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePointInsAsUser
		 * @return void
		*/ 
		public function DeleteAllTablePointInsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointInAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_point_in`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePointOutAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePointOutsAsUser as an array of TablePointOut objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePointOut[]
		*/ 
		public function GetTablePointOutAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePointOut::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePointOutsAsUser
		 * @return int
		*/ 
		public function CountTablePointOutsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TablePointOut::CountByUserId($this->intId);
		}

		/**
		 * Associates a TablePointOutAsUser
		 * @param TablePointOut $objTablePointOut
		 * @return void
		*/ 
		public function AssociateTablePointOutAsUser(TablePointOut $objTablePointOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePointOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePointOutAsUser on this TableUserProject with an unsaved TablePointOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_out`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointOut->Id) . '
			');
		}

		/**
		 * Unassociates a TablePointOutAsUser
		 * @param TablePointOut $objTablePointOut
		 * @return void
		*/ 
		public function UnassociateTablePointOutAsUser(TablePointOut $objTablePointOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointOutAsUser on this TableUserProject with an unsaved TablePointOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_out`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointOut->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePointOutsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTablePointOutsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointOutAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_point_out`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePointOutAsUser
		 * @param TablePointOut $objTablePointOut
		 * @return void
		*/ 
		public function DeleteAssociatedTablePointOutAsUser(TablePointOut $objTablePointOut) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointOutAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePointOut->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointOutAsUser on this TableUserProject with an unsaved TablePointOut.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_point_out`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePointOut->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePointOutsAsUser
		 * @return void
		*/ 
		public function DeleteAllTablePointOutsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePointOutAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_point_out`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePortfolioAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePortfoliosAsUser as an array of TablePortfolio objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePortfolio[]
		*/ 
		public function GetTablePortfolioAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePortfolio::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePortfoliosAsUser
		 * @return int
		*/ 
		public function CountTablePortfoliosAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TablePortfolio::CountByUserId($this->intId);
		}

		/**
		 * Associates a TablePortfolioAsUser
		 * @param TablePortfolio $objTablePortfolio
		 * @return void
		*/ 
		public function AssociateTablePortfolioAsUser(TablePortfolio $objTablePortfolio) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePortfolioAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePortfolio->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePortfolioAsUser on this TableUserProject with an unsaved TablePortfolio.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_portfolio`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePortfolio->Id) . '
			');
		}

		/**
		 * Unassociates a TablePortfolioAsUser
		 * @param TablePortfolio $objTablePortfolio
		 * @return void
		*/ 
		public function UnassociateTablePortfolioAsUser(TablePortfolio $objTablePortfolio) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePortfolioAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePortfolio->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePortfolioAsUser on this TableUserProject with an unsaved TablePortfolio.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_portfolio`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePortfolio->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePortfoliosAsUser
		 * @return void
		*/ 
		public function UnassociateAllTablePortfoliosAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePortfolioAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_portfolio`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePortfolioAsUser
		 * @param TablePortfolio $objTablePortfolio
		 * @return void
		*/ 
		public function DeleteAssociatedTablePortfolioAsUser(TablePortfolio $objTablePortfolio) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePortfolioAsUser on this unsaved TableUserProject.');
			if ((is_null($objTablePortfolio->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePortfolioAsUser on this TableUserProject with an unsaved TablePortfolio.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_portfolio`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePortfolio->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePortfoliosAsUser
		 * @return void
		*/ 
		public function DeleteAllTablePortfoliosAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePortfolioAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_portfolio`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePrivateMessageAsUserIdFrom
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePrivateMessagesAsUserIdFrom as an array of TablePrivateMessage objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePrivateMessage[]
		*/ 
		public function GetTablePrivateMessageAsUserIdFromArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePrivateMessage::LoadArrayByUserIdFrom($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePrivateMessagesAsUserIdFrom
		 * @return int
		*/ 
		public function CountTablePrivateMessagesAsUserIdFrom() {
			if ((is_null($this->intId)))
				return 0;

			return TablePrivateMessage::CountByUserIdFrom($this->intId);
		}

		/**
		 * Associates a TablePrivateMessageAsUserIdFrom
		 * @param TablePrivateMessage $objTablePrivateMessage
		 * @return void
		*/ 
		public function AssociateTablePrivateMessageAsUserIdFrom(TablePrivateMessage $objTablePrivateMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePrivateMessageAsUserIdFrom on this unsaved TableUserProject.');
			if ((is_null($objTablePrivateMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePrivateMessageAsUserIdFrom on this TableUserProject with an unsaved TablePrivateMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_private_message`
				SET
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePrivateMessage->Id) . '
			');
		}

		/**
		 * Unassociates a TablePrivateMessageAsUserIdFrom
		 * @param TablePrivateMessage $objTablePrivateMessage
		 * @return void
		*/ 
		public function UnassociateTablePrivateMessageAsUserIdFrom(TablePrivateMessage $objTablePrivateMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdFrom on this unsaved TableUserProject.');
			if ((is_null($objTablePrivateMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdFrom on this TableUserProject with an unsaved TablePrivateMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_private_message`
				SET
					`user_id_from` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePrivateMessage->Id) . ' AND
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePrivateMessagesAsUserIdFrom
		 * @return void
		*/ 
		public function UnassociateAllTablePrivateMessagesAsUserIdFrom() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdFrom on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_private_message`
				SET
					`user_id_from` = null
				WHERE
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePrivateMessageAsUserIdFrom
		 * @param TablePrivateMessage $objTablePrivateMessage
		 * @return void
		*/ 
		public function DeleteAssociatedTablePrivateMessageAsUserIdFrom(TablePrivateMessage $objTablePrivateMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdFrom on this unsaved TableUserProject.');
			if ((is_null($objTablePrivateMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdFrom on this TableUserProject with an unsaved TablePrivateMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_private_message`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePrivateMessage->Id) . ' AND
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePrivateMessagesAsUserIdFrom
		 * @return void
		*/ 
		public function DeleteAllTablePrivateMessagesAsUserIdFrom() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdFrom on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_private_message`
				WHERE
					`user_id_from` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TablePrivateMessageAsUserIdTo
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TablePrivateMessagesAsUserIdTo as an array of TablePrivateMessage objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TablePrivateMessage[]
		*/ 
		public function GetTablePrivateMessageAsUserIdToArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TablePrivateMessage::LoadArrayByUserIdTo($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TablePrivateMessagesAsUserIdTo
		 * @return int
		*/ 
		public function CountTablePrivateMessagesAsUserIdTo() {
			if ((is_null($this->intId)))
				return 0;

			return TablePrivateMessage::CountByUserIdTo($this->intId);
		}

		/**
		 * Associates a TablePrivateMessageAsUserIdTo
		 * @param TablePrivateMessage $objTablePrivateMessage
		 * @return void
		*/ 
		public function AssociateTablePrivateMessageAsUserIdTo(TablePrivateMessage $objTablePrivateMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePrivateMessageAsUserIdTo on this unsaved TableUserProject.');
			if ((is_null($objTablePrivateMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTablePrivateMessageAsUserIdTo on this TableUserProject with an unsaved TablePrivateMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_private_message`
				SET
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePrivateMessage->Id) . '
			');
		}

		/**
		 * Unassociates a TablePrivateMessageAsUserIdTo
		 * @param TablePrivateMessage $objTablePrivateMessage
		 * @return void
		*/ 
		public function UnassociateTablePrivateMessageAsUserIdTo(TablePrivateMessage $objTablePrivateMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdTo on this unsaved TableUserProject.');
			if ((is_null($objTablePrivateMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdTo on this TableUserProject with an unsaved TablePrivateMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_private_message`
				SET
					`user_id_to` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePrivateMessage->Id) . ' AND
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TablePrivateMessagesAsUserIdTo
		 * @return void
		*/ 
		public function UnassociateAllTablePrivateMessagesAsUserIdTo() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdTo on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_private_message`
				SET
					`user_id_to` = null
				WHERE
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TablePrivateMessageAsUserIdTo
		 * @param TablePrivateMessage $objTablePrivateMessage
		 * @return void
		*/ 
		public function DeleteAssociatedTablePrivateMessageAsUserIdTo(TablePrivateMessage $objTablePrivateMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdTo on this unsaved TableUserProject.');
			if ((is_null($objTablePrivateMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdTo on this TableUserProject with an unsaved TablePrivateMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_private_message`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTablePrivateMessage->Id) . ' AND
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TablePrivateMessagesAsUserIdTo
		 * @return void
		*/ 
		public function DeleteAllTablePrivateMessagesAsUserIdTo() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTablePrivateMessageAsUserIdTo on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_private_message`
				WHERE
					`user_id_to` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectsAsUser as an array of TableProject objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProject[]
		*/ 
		public function GetTableProjectAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProject::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectsAsUser
		 * @return int
		*/ 
		public function CountTableProjectsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProject::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableProjectAsUser
		 * @param TableProject $objTableProject
		 * @return void
		*/ 
		public function AssociateTableProjectAsUser(TableProject $objTableProject) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProject->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectAsUser on this TableUserProject with an unsaved TableProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProject->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectAsUser
		 * @param TableProject $objTableProject
		 * @return void
		*/ 
		public function UnassociateTableProjectAsUser(TableProject $objTableProject) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProject->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsUser on this TableUserProject with an unsaved TableProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProject->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectAsUser
		 * @param TableProject $objTableProject
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectAsUser(TableProject $objTableProject) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProject->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsUser on this TableUserProject with an unsaved TableProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProject->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectAsWonUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectsAsWonUser as an array of TableProject objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProject[]
		*/ 
		public function GetTableProjectAsWonUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProject::LoadArrayByWonUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectsAsWonUser
		 * @return int
		*/ 
		public function CountTableProjectsAsWonUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProject::CountByWonUserId($this->intId);
		}

		/**
		 * Associates a TableProjectAsWonUser
		 * @param TableProject $objTableProject
		 * @return void
		*/ 
		public function AssociateTableProjectAsWonUser(TableProject $objTableProject) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectAsWonUser on this unsaved TableUserProject.');
			if ((is_null($objTableProject->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectAsWonUser on this TableUserProject with an unsaved TableProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project`
				SET
					`won_user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProject->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectAsWonUser
		 * @param TableProject $objTableProject
		 * @return void
		*/ 
		public function UnassociateTableProjectAsWonUser(TableProject $objTableProject) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsWonUser on this unsaved TableUserProject.');
			if ((is_null($objTableProject->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsWonUser on this TableUserProject with an unsaved TableProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project`
				SET
					`won_user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProject->Id) . ' AND
					`won_user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectsAsWonUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectsAsWonUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsWonUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project`
				SET
					`won_user_id` = null
				WHERE
					`won_user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectAsWonUser
		 * @param TableProject $objTableProject
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectAsWonUser(TableProject $objTableProject) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsWonUser on this unsaved TableUserProject.');
			if ((is_null($objTableProject->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsWonUser on this TableUserProject with an unsaved TableProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProject->Id) . ' AND
					`won_user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectsAsWonUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectsAsWonUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAsWonUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project`
				WHERE
					`won_user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectAttachmentAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectAttachmentsAsUser as an array of TableProjectAttachment objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectAttachment[]
		*/ 
		public function GetTableProjectAttachmentAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectAttachment::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectAttachmentsAsUser
		 * @return int
		*/ 
		public function CountTableProjectAttachmentsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectAttachment::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableProjectAttachmentAsUser
		 * @param TableProjectAttachment $objTableProjectAttachment
		 * @return void
		*/ 
		public function AssociateTableProjectAttachmentAsUser(TableProjectAttachment $objTableProjectAttachment) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectAttachmentAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectAttachment->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectAttachmentAsUser on this TableUserProject with an unsaved TableProjectAttachment.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_attachment`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectAttachment->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectAttachmentAsUser
		 * @param TableProjectAttachment $objTableProjectAttachment
		 * @return void
		*/ 
		public function UnassociateTableProjectAttachmentAsUser(TableProjectAttachment $objTableProjectAttachment) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAttachmentAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectAttachment->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAttachmentAsUser on this TableUserProject with an unsaved TableProjectAttachment.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_attachment`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectAttachment->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectAttachmentsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectAttachmentsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAttachmentAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_attachment`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectAttachmentAsUser
		 * @param TableProjectAttachment $objTableProjectAttachment
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectAttachmentAsUser(TableProjectAttachment $objTableProjectAttachment) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAttachmentAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectAttachment->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAttachmentAsUser on this TableUserProject with an unsaved TableProjectAttachment.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_attachment`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectAttachment->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectAttachmentsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectAttachmentsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectAttachmentAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_attachment`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectBidAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectBidsAsUser as an array of TableProjectBid objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectBid[]
		*/ 
		public function GetTableProjectBidAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectBid::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectBidsAsUser
		 * @return int
		*/ 
		public function CountTableProjectBidsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectBid::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableProjectBidAsUser
		 * @param TableProjectBid $objTableProjectBid
		 * @return void
		*/ 
		public function AssociateTableProjectBidAsUser(TableProjectBid $objTableProjectBid) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectBidAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectBid->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectBidAsUser on this TableUserProject with an unsaved TableProjectBid.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_bid`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectBid->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectBidAsUser
		 * @param TableProjectBid $objTableProjectBid
		 * @return void
		*/ 
		public function UnassociateTableProjectBidAsUser(TableProjectBid $objTableProjectBid) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectBidAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectBid->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectBidAsUser on this TableUserProject with an unsaved TableProjectBid.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_bid`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectBid->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectBidsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectBidsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectBidAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_bid`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectBidAsUser
		 * @param TableProjectBid $objTableProjectBid
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectBidAsUser(TableProjectBid $objTableProjectBid) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectBidAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectBid->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectBidAsUser on this TableUserProject with an unsaved TableProjectBid.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_bid`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectBid->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectBidsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectBidsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectBidAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_bid`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectCancelAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectCancelsAsUser as an array of TableProjectCancel objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectCancel[]
		*/ 
		public function GetTableProjectCancelAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectCancel::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectCancelsAsUser
		 * @return int
		*/ 
		public function CountTableProjectCancelsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectCancel::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableProjectCancelAsUser
		 * @param TableProjectCancel $objTableProjectCancel
		 * @return void
		*/ 
		public function AssociateTableProjectCancelAsUser(TableProjectCancel $objTableProjectCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectCancelAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectCancelAsUser on this TableUserProject with an unsaved TableProjectCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_cancel`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectCancel->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectCancelAsUser
		 * @param TableProjectCancel $objTableProjectCancel
		 * @return void
		*/ 
		public function UnassociateTableProjectCancelAsUser(TableProjectCancel $objTableProjectCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectCancelAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectCancelAsUser on this TableUserProject with an unsaved TableProjectCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_cancel`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectCancel->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectCancelsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectCancelsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectCancelAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_cancel`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectCancelAsUser
		 * @param TableProjectCancel $objTableProjectCancel
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectCancelAsUser(TableProjectCancel $objTableProjectCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectCancelAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectCancelAsUser on this TableUserProject with an unsaved TableProjectCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_cancel`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectCancel->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectCancelsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectCancelsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectCancelAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_cancel`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectEditAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectEditsAsUser as an array of TableProjectEdit objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectEdit[]
		*/ 
		public function GetTableProjectEditAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectEdit::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectEditsAsUser
		 * @return int
		*/ 
		public function CountTableProjectEditsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectEdit::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableProjectEditAsUser
		 * @param TableProjectEdit $objTableProjectEdit
		 * @return void
		*/ 
		public function AssociateTableProjectEditAsUser(TableProjectEdit $objTableProjectEdit) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectEditAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectEdit->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectEditAsUser on this TableUserProject with an unsaved TableProjectEdit.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_edit`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectEdit->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectEditAsUser
		 * @param TableProjectEdit $objTableProjectEdit
		 * @return void
		*/ 
		public function UnassociateTableProjectEditAsUser(TableProjectEdit $objTableProjectEdit) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectEditAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectEdit->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectEditAsUser on this TableUserProject with an unsaved TableProjectEdit.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_edit`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectEdit->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectEditsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectEditsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectEditAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_edit`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectEditAsUser
		 * @param TableProjectEdit $objTableProjectEdit
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectEditAsUser(TableProjectEdit $objTableProjectEdit) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectEditAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectEdit->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectEditAsUser on this TableUserProject with an unsaved TableProjectEdit.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_edit`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectEdit->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectEditsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectEditsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectEditAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_edit`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectMessageAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectMessagesAsUser as an array of TableProjectMessage objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectMessage[]
		*/ 
		public function GetTableProjectMessageAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectMessage::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectMessagesAsUser
		 * @return int
		*/ 
		public function CountTableProjectMessagesAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectMessage::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableProjectMessageAsUser
		 * @param TableProjectMessage $objTableProjectMessage
		 * @return void
		*/ 
		public function AssociateTableProjectMessageAsUser(TableProjectMessage $objTableProjectMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectMessageAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectMessageAsUser on this TableUserProject with an unsaved TableProjectMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_message`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectMessage->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectMessageAsUser
		 * @param TableProjectMessage $objTableProjectMessage
		 * @return void
		*/ 
		public function UnassociateTableProjectMessageAsUser(TableProjectMessage $objTableProjectMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectMessageAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectMessageAsUser on this TableUserProject with an unsaved TableProjectMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_message`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectMessage->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectMessagesAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableProjectMessagesAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectMessageAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_message`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectMessageAsUser
		 * @param TableProjectMessage $objTableProjectMessage
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectMessageAsUser(TableProjectMessage $objTableProjectMessage) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectMessageAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableProjectMessage->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectMessageAsUser on this TableUserProject with an unsaved TableProjectMessage.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_message`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectMessage->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectMessagesAsUser
		 * @return void
		*/ 
		public function DeleteAllTableProjectMessagesAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectMessageAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_message`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectRequestCancelAsBuyer
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectRequestCancelsAsBuyer as an array of TableProjectRequestCancel objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectRequestCancel[]
		*/ 
		public function GetTableProjectRequestCancelAsBuyerArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectRequestCancel::LoadArrayByBuyerId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectRequestCancelsAsBuyer
		 * @return int
		*/ 
		public function CountTableProjectRequestCancelsAsBuyer() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectRequestCancel::CountByBuyerId($this->intId);
		}

		/**
		 * Associates a TableProjectRequestCancelAsBuyer
		 * @param TableProjectRequestCancel $objTableProjectRequestCancel
		 * @return void
		*/ 
		public function AssociateTableProjectRequestCancelAsBuyer(TableProjectRequestCancel $objTableProjectRequestCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCancelAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCancelAsBuyer on this TableUserProject with an unsaved TableProjectRequestCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_cancel`
				SET
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestCancel->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectRequestCancelAsBuyer
		 * @param TableProjectRequestCancel $objTableProjectRequestCancel
		 * @return void
		*/ 
		public function UnassociateTableProjectRequestCancelAsBuyer(TableProjectRequestCancel $objTableProjectRequestCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsBuyer on this TableUserProject with an unsaved TableProjectRequestCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_cancel`
				SET
					`buyer_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestCancel->Id) . ' AND
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectRequestCancelsAsBuyer
		 * @return void
		*/ 
		public function UnassociateAllTableProjectRequestCancelsAsBuyer() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsBuyer on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_cancel`
				SET
					`buyer_id` = null
				WHERE
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectRequestCancelAsBuyer
		 * @param TableProjectRequestCancel $objTableProjectRequestCancel
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectRequestCancelAsBuyer(TableProjectRequestCancel $objTableProjectRequestCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsBuyer on this TableUserProject with an unsaved TableProjectRequestCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_cancel`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestCancel->Id) . ' AND
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectRequestCancelsAsBuyer
		 * @return void
		*/ 
		public function DeleteAllTableProjectRequestCancelsAsBuyer() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsBuyer on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_cancel`
				WHERE
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectRequestCancelAsProvider
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectRequestCancelsAsProvider as an array of TableProjectRequestCancel objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectRequestCancel[]
		*/ 
		public function GetTableProjectRequestCancelAsProviderArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectRequestCancel::LoadArrayByProviderId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectRequestCancelsAsProvider
		 * @return int
		*/ 
		public function CountTableProjectRequestCancelsAsProvider() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectRequestCancel::CountByProviderId($this->intId);
		}

		/**
		 * Associates a TableProjectRequestCancelAsProvider
		 * @param TableProjectRequestCancel $objTableProjectRequestCancel
		 * @return void
		*/ 
		public function AssociateTableProjectRequestCancelAsProvider(TableProjectRequestCancel $objTableProjectRequestCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCancelAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCancelAsProvider on this TableUserProject with an unsaved TableProjectRequestCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_cancel`
				SET
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestCancel->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectRequestCancelAsProvider
		 * @param TableProjectRequestCancel $objTableProjectRequestCancel
		 * @return void
		*/ 
		public function UnassociateTableProjectRequestCancelAsProvider(TableProjectRequestCancel $objTableProjectRequestCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsProvider on this TableUserProject with an unsaved TableProjectRequestCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_cancel`
				SET
					`provider_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestCancel->Id) . ' AND
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectRequestCancelsAsProvider
		 * @return void
		*/ 
		public function UnassociateAllTableProjectRequestCancelsAsProvider() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsProvider on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_cancel`
				SET
					`provider_id` = null
				WHERE
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectRequestCancelAsProvider
		 * @param TableProjectRequestCancel $objTableProjectRequestCancel
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectRequestCancelAsProvider(TableProjectRequestCancel $objTableProjectRequestCancel) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestCancel->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsProvider on this TableUserProject with an unsaved TableProjectRequestCancel.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_cancel`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestCancel->Id) . ' AND
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectRequestCancelsAsProvider
		 * @return void
		*/ 
		public function DeleteAllTableProjectRequestCancelsAsProvider() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCancelAsProvider on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_cancel`
				WHERE
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectRequestCompleteAsBuyer
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectRequestCompletesAsBuyer as an array of TableProjectRequestComplete objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectRequestComplete[]
		*/ 
		public function GetTableProjectRequestCompleteAsBuyerArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectRequestComplete::LoadArrayByBuyerId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectRequestCompletesAsBuyer
		 * @return int
		*/ 
		public function CountTableProjectRequestCompletesAsBuyer() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectRequestComplete::CountByBuyerId($this->intId);
		}

		/**
		 * Associates a TableProjectRequestCompleteAsBuyer
		 * @param TableProjectRequestComplete $objTableProjectRequestComplete
		 * @return void
		*/ 
		public function AssociateTableProjectRequestCompleteAsBuyer(TableProjectRequestComplete $objTableProjectRequestComplete) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCompleteAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestComplete->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCompleteAsBuyer on this TableUserProject with an unsaved TableProjectRequestComplete.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_complete`
				SET
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestComplete->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectRequestCompleteAsBuyer
		 * @param TableProjectRequestComplete $objTableProjectRequestComplete
		 * @return void
		*/ 
		public function UnassociateTableProjectRequestCompleteAsBuyer(TableProjectRequestComplete $objTableProjectRequestComplete) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestComplete->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsBuyer on this TableUserProject with an unsaved TableProjectRequestComplete.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_complete`
				SET
					`buyer_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestComplete->Id) . ' AND
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectRequestCompletesAsBuyer
		 * @return void
		*/ 
		public function UnassociateAllTableProjectRequestCompletesAsBuyer() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsBuyer on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_complete`
				SET
					`buyer_id` = null
				WHERE
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectRequestCompleteAsBuyer
		 * @param TableProjectRequestComplete $objTableProjectRequestComplete
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectRequestCompleteAsBuyer(TableProjectRequestComplete $objTableProjectRequestComplete) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestComplete->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsBuyer on this TableUserProject with an unsaved TableProjectRequestComplete.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_complete`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestComplete->Id) . ' AND
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectRequestCompletesAsBuyer
		 * @return void
		*/ 
		public function DeleteAllTableProjectRequestCompletesAsBuyer() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsBuyer on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_complete`
				WHERE
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectRequestCompleteAsProvider
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectRequestCompletesAsProvider as an array of TableProjectRequestComplete objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectRequestComplete[]
		*/ 
		public function GetTableProjectRequestCompleteAsProviderArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectRequestComplete::LoadArrayByProviderId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectRequestCompletesAsProvider
		 * @return int
		*/ 
		public function CountTableProjectRequestCompletesAsProvider() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectRequestComplete::CountByProviderId($this->intId);
		}

		/**
		 * Associates a TableProjectRequestCompleteAsProvider
		 * @param TableProjectRequestComplete $objTableProjectRequestComplete
		 * @return void
		*/ 
		public function AssociateTableProjectRequestCompleteAsProvider(TableProjectRequestComplete $objTableProjectRequestComplete) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCompleteAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestComplete->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectRequestCompleteAsProvider on this TableUserProject with an unsaved TableProjectRequestComplete.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_complete`
				SET
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestComplete->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectRequestCompleteAsProvider
		 * @param TableProjectRequestComplete $objTableProjectRequestComplete
		 * @return void
		*/ 
		public function UnassociateTableProjectRequestCompleteAsProvider(TableProjectRequestComplete $objTableProjectRequestComplete) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestComplete->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsProvider on this TableUserProject with an unsaved TableProjectRequestComplete.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_complete`
				SET
					`provider_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestComplete->Id) . ' AND
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectRequestCompletesAsProvider
		 * @return void
		*/ 
		public function UnassociateAllTableProjectRequestCompletesAsProvider() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsProvider on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_request_complete`
				SET
					`provider_id` = null
				WHERE
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectRequestCompleteAsProvider
		 * @param TableProjectRequestComplete $objTableProjectRequestComplete
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectRequestCompleteAsProvider(TableProjectRequestComplete $objTableProjectRequestComplete) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectRequestComplete->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsProvider on this TableUserProject with an unsaved TableProjectRequestComplete.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_complete`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectRequestComplete->Id) . ' AND
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectRequestCompletesAsProvider
		 * @return void
		*/ 
		public function DeleteAllTableProjectRequestCompletesAsProvider() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectRequestCompleteAsProvider on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_request_complete`
				WHERE
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectWonAsBuyer
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectWonsAsBuyer as an array of TableProjectWon objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectWon[]
		*/ 
		public function GetTableProjectWonAsBuyerArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectWon::LoadArrayByBuyerId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectWonsAsBuyer
		 * @return int
		*/ 
		public function CountTableProjectWonsAsBuyer() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectWon::CountByBuyerId($this->intId);
		}

		/**
		 * Associates a TableProjectWonAsBuyer
		 * @param TableProjectWon $objTableProjectWon
		 * @return void
		*/ 
		public function AssociateTableProjectWonAsBuyer(TableProjectWon $objTableProjectWon) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectWonAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectWon->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectWonAsBuyer on this TableUserProject with an unsaved TableProjectWon.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_won`
				SET
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectWon->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectWonAsBuyer
		 * @param TableProjectWon $objTableProjectWon
		 * @return void
		*/ 
		public function UnassociateTableProjectWonAsBuyer(TableProjectWon $objTableProjectWon) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectWon->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsBuyer on this TableUserProject with an unsaved TableProjectWon.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_won`
				SET
					`buyer_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectWon->Id) . ' AND
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectWonsAsBuyer
		 * @return void
		*/ 
		public function UnassociateAllTableProjectWonsAsBuyer() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsBuyer on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_won`
				SET
					`buyer_id` = null
				WHERE
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectWonAsBuyer
		 * @param TableProjectWon $objTableProjectWon
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectWonAsBuyer(TableProjectWon $objTableProjectWon) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsBuyer on this unsaved TableUserProject.');
			if ((is_null($objTableProjectWon->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsBuyer on this TableUserProject with an unsaved TableProjectWon.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_won`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectWon->Id) . ' AND
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectWonsAsBuyer
		 * @return void
		*/ 
		public function DeleteAllTableProjectWonsAsBuyer() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsBuyer on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_won`
				WHERE
					`buyer_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableProjectWonAsProvider
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableProjectWonsAsProvider as an array of TableProjectWon objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableProjectWon[]
		*/ 
		public function GetTableProjectWonAsProviderArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableProjectWon::LoadArrayByProviderId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableProjectWonsAsProvider
		 * @return int
		*/ 
		public function CountTableProjectWonsAsProvider() {
			if ((is_null($this->intId)))
				return 0;

			return TableProjectWon::CountByProviderId($this->intId);
		}

		/**
		 * Associates a TableProjectWonAsProvider
		 * @param TableProjectWon $objTableProjectWon
		 * @return void
		*/ 
		public function AssociateTableProjectWonAsProvider(TableProjectWon $objTableProjectWon) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectWonAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectWon->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableProjectWonAsProvider on this TableUserProject with an unsaved TableProjectWon.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_won`
				SET
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectWon->Id) . '
			');
		}

		/**
		 * Unassociates a TableProjectWonAsProvider
		 * @param TableProjectWon $objTableProjectWon
		 * @return void
		*/ 
		public function UnassociateTableProjectWonAsProvider(TableProjectWon $objTableProjectWon) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectWon->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsProvider on this TableUserProject with an unsaved TableProjectWon.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_won`
				SET
					`provider_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectWon->Id) . ' AND
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableProjectWonsAsProvider
		 * @return void
		*/ 
		public function UnassociateAllTableProjectWonsAsProvider() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsProvider on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_project_won`
				SET
					`provider_id` = null
				WHERE
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableProjectWonAsProvider
		 * @param TableProjectWon $objTableProjectWon
		 * @return void
		*/ 
		public function DeleteAssociatedTableProjectWonAsProvider(TableProjectWon $objTableProjectWon) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsProvider on this unsaved TableUserProject.');
			if ((is_null($objTableProjectWon->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsProvider on this TableUserProject with an unsaved TableProjectWon.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_won`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableProjectWon->Id) . ' AND
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableProjectWonsAsProvider
		 * @return void
		*/ 
		public function DeleteAllTableProjectWonsAsProvider() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableProjectWonAsProvider on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_project_won`
				WHERE
					`provider_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableTransactionAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableTransactionsAsUser as an array of TableTransaction objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableTransaction[]
		*/ 
		public function GetTableTransactionAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableTransaction::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableTransactionsAsUser
		 * @return int
		*/ 
		public function CountTableTransactionsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableTransaction::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableTransactionAsUser
		 * @param TableTransaction $objTableTransaction
		 * @return void
		*/ 
		public function AssociateTableTransactionAsUser(TableTransaction $objTableTransaction) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableTransactionAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableTransaction->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableTransactionAsUser on this TableUserProject with an unsaved TableTransaction.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_transaction`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableTransaction->Id) . '
			');
		}

		/**
		 * Unassociates a TableTransactionAsUser
		 * @param TableTransaction $objTableTransaction
		 * @return void
		*/ 
		public function UnassociateTableTransactionAsUser(TableTransaction $objTableTransaction) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableTransactionAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableTransaction->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableTransactionAsUser on this TableUserProject with an unsaved TableTransaction.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_transaction`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableTransaction->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableTransactionsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableTransactionsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableTransactionAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_transaction`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableTransactionAsUser
		 * @param TableTransaction $objTableTransaction
		 * @return void
		*/ 
		public function DeleteAssociatedTableTransactionAsUser(TableTransaction $objTableTransaction) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableTransactionAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableTransaction->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableTransactionAsUser on this TableUserProject with an unsaved TableTransaction.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_transaction`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableTransaction->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableTransactionsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableTransactionsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableTransactionAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_transaction`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableUserAddressAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableUserAddressesAsUser as an array of TableUserAddress objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserAddress[]
		*/ 
		public function GetTableUserAddressAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableUserAddress::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableUserAddressesAsUser
		 * @return int
		*/ 
		public function CountTableUserAddressesAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableUserAddress::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableUserAddressAsUser
		 * @param TableUserAddress $objTableUserAddress
		 * @return void
		*/ 
		public function AssociateTableUserAddressAsUser(TableUserAddress $objTableUserAddress) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserAddressAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserAddress->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserAddressAsUser on this TableUserProject with an unsaved TableUserAddress.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_address`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserAddress->Id) . '
			');
		}

		/**
		 * Unassociates a TableUserAddressAsUser
		 * @param TableUserAddress $objTableUserAddress
		 * @return void
		*/ 
		public function UnassociateTableUserAddressAsUser(TableUserAddress $objTableUserAddress) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserAddressAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserAddress->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserAddressAsUser on this TableUserProject with an unsaved TableUserAddress.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_address`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserAddress->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableUserAddressesAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableUserAddressesAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserAddressAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_address`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableUserAddressAsUser
		 * @param TableUserAddress $objTableUserAddress
		 * @return void
		*/ 
		public function DeleteAssociatedTableUserAddressAsUser(TableUserAddress $objTableUserAddress) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserAddressAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserAddress->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserAddressAsUser on this TableUserProject with an unsaved TableUserAddress.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_address`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserAddress->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableUserAddressesAsUser
		 * @return void
		*/ 
		public function DeleteAllTableUserAddressesAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserAddressAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_address`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableUserItemAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableUserItemsAsUser as an array of TableUserItem objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserItem[]
		*/ 
		public function GetTableUserItemAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableUserItem::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableUserItemsAsUser
		 * @return int
		*/ 
		public function CountTableUserItemsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableUserItem::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableUserItemAsUser
		 * @param TableUserItem $objTableUserItem
		 * @return void
		*/ 
		public function AssociateTableUserItemAsUser(TableUserItem $objTableUserItem) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserItemAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserItem->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserItemAsUser on this TableUserProject with an unsaved TableUserItem.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_item`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserItem->Id) . '
			');
		}

		/**
		 * Unassociates a TableUserItemAsUser
		 * @param TableUserItem $objTableUserItem
		 * @return void
		*/ 
		public function UnassociateTableUserItemAsUser(TableUserItem $objTableUserItem) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserItemAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserItem->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserItemAsUser on this TableUserProject with an unsaved TableUserItem.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_item`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserItem->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableUserItemsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableUserItemsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserItemAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_item`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableUserItemAsUser
		 * @param TableUserItem $objTableUserItem
		 * @return void
		*/ 
		public function DeleteAssociatedTableUserItemAsUser(TableUserItem $objTableUserItem) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserItemAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserItem->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserItemAsUser on this TableUserProject with an unsaved TableUserItem.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_item`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserItem->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableUserItemsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableUserItemsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserItemAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_item`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableUserProfileAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableUserProfilesAsUser as an array of TableUserProfile objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserProfile[]
		*/ 
		public function GetTableUserProfileAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableUserProfile::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableUserProfilesAsUser
		 * @return int
		*/ 
		public function CountTableUserProfilesAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableUserProfile::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableUserProfileAsUser
		 * @param TableUserProfile $objTableUserProfile
		 * @return void
		*/ 
		public function AssociateTableUserProfileAsUser(TableUserProfile $objTableUserProfile) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserProfileAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserProfile->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserProfileAsUser on this TableUserProject with an unsaved TableUserProfile.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_profile`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserProfile->Id) . '
			');
		}

		/**
		 * Unassociates a TableUserProfileAsUser
		 * @param TableUserProfile $objTableUserProfile
		 * @return void
		*/ 
		public function UnassociateTableUserProfileAsUser(TableUserProfile $objTableUserProfile) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserProfileAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserProfile->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserProfileAsUser on this TableUserProject with an unsaved TableUserProfile.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_profile`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserProfile->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableUserProfilesAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableUserProfilesAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserProfileAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_profile`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableUserProfileAsUser
		 * @param TableUserProfile $objTableUserProfile
		 * @return void
		*/ 
		public function DeleteAssociatedTableUserProfileAsUser(TableUserProfile $objTableUserProfile) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserProfileAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserProfile->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserProfileAsUser on this TableUserProject with an unsaved TableUserProfile.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_profile`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserProfile->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableUserProfilesAsUser
		 * @return void
		*/ 
		public function DeleteAllTableUserProfilesAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserProfileAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_profile`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableUserStatAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableUserStatsAsUser as an array of TableUserStat objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableUserStat[]
		*/ 
		public function GetTableUserStatAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableUserStat::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableUserStatsAsUser
		 * @return int
		*/ 
		public function CountTableUserStatsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableUserStat::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableUserStatAsUser
		 * @param TableUserStat $objTableUserStat
		 * @return void
		*/ 
		public function AssociateTableUserStatAsUser(TableUserStat $objTableUserStat) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserStatAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserStat->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableUserStatAsUser on this TableUserProject with an unsaved TableUserStat.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_stat`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserStat->Id) . '
			');
		}

		/**
		 * Unassociates a TableUserStatAsUser
		 * @param TableUserStat $objTableUserStat
		 * @return void
		*/ 
		public function UnassociateTableUserStatAsUser(TableUserStat $objTableUserStat) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserStatAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserStat->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserStatAsUser on this TableUserProject with an unsaved TableUserStat.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_stat`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserStat->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableUserStatsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableUserStatsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserStatAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_user_stat`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableUserStatAsUser
		 * @param TableUserStat $objTableUserStat
		 * @return void
		*/ 
		public function DeleteAssociatedTableUserStatAsUser(TableUserStat $objTableUserStat) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserStatAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableUserStat->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserStatAsUser on this TableUserProject with an unsaved TableUserStat.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_stat`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableUserStat->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableUserStatsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableUserStatsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableUserStatAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_user_stat`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableViolationReportAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableViolationReportsAsUser as an array of TableViolationReport objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableViolationReport[]
		*/ 
		public function GetTableViolationReportAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableViolationReport::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableViolationReportsAsUser
		 * @return int
		*/ 
		public function CountTableViolationReportsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableViolationReport::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableViolationReportAsUser
		 * @param TableViolationReport $objTableViolationReport
		 * @return void
		*/ 
		public function AssociateTableViolationReportAsUser(TableViolationReport $objTableViolationReport) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableViolationReportAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableViolationReport->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableViolationReportAsUser on this TableUserProject with an unsaved TableViolationReport.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_violation_report`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableViolationReport->Id) . '
			');
		}

		/**
		 * Unassociates a TableViolationReportAsUser
		 * @param TableViolationReport $objTableViolationReport
		 * @return void
		*/ 
		public function UnassociateTableViolationReportAsUser(TableViolationReport $objTableViolationReport) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableViolationReportAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableViolationReport->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableViolationReportAsUser on this TableUserProject with an unsaved TableViolationReport.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_violation_report`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableViolationReport->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableViolationReportsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableViolationReportsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableViolationReportAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_violation_report`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableViolationReportAsUser
		 * @param TableViolationReport $objTableViolationReport
		 * @return void
		*/ 
		public function DeleteAssociatedTableViolationReportAsUser(TableViolationReport $objTableViolationReport) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableViolationReportAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableViolationReport->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableViolationReportAsUser on this TableUserProject with an unsaved TableViolationReport.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_violation_report`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableViolationReport->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableViolationReportsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableViolationReportsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableViolationReportAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_violation_report`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

			
		
		// Related Objects' Methods for TableWatchListAsUser
		//-------------------------------------------------------------------

		/**
		 * Gets all associated TableWatchListsAsUser as an array of TableWatchList objects
		 * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
		 * @return TableWatchList[]
		*/ 
		public function GetTableWatchListAsUserArray($objOptionalClauses = null) {
			if ((is_null($this->intId)))
				return array();

			try {
				return TableWatchList::LoadArrayByUserId($this->intId, $objOptionalClauses);
			} catch (QCallerException $objExc) {
				$objExc->IncrementOffset();
				throw $objExc;
			}
		}

		/**
		 * Counts all associated TableWatchListsAsUser
		 * @return int
		*/ 
		public function CountTableWatchListsAsUser() {
			if ((is_null($this->intId)))
				return 0;

			return TableWatchList::CountByUserId($this->intId);
		}

		/**
		 * Associates a TableWatchListAsUser
		 * @param TableWatchList $objTableWatchList
		 * @return void
		*/ 
		public function AssociateTableWatchListAsUser(TableWatchList $objTableWatchList) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableWatchListAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableWatchList->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call AssociateTableWatchListAsUser on this TableUserProject with an unsaved TableWatchList.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_watch_list`
				SET
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableWatchList->Id) . '
			');
		}

		/**
		 * Unassociates a TableWatchListAsUser
		 * @param TableWatchList $objTableWatchList
		 * @return void
		*/ 
		public function UnassociateTableWatchListAsUser(TableWatchList $objTableWatchList) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableWatchListAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableWatchList->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableWatchListAsUser on this TableUserProject with an unsaved TableWatchList.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_watch_list`
				SET
					`user_id` = null
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableWatchList->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Unassociates all TableWatchListsAsUser
		 * @return void
		*/ 
		public function UnassociateAllTableWatchListsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableWatchListAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				UPDATE
					`table_watch_list`
				SET
					`user_id` = null
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes an associated TableWatchListAsUser
		 * @param TableWatchList $objTableWatchList
		 * @return void
		*/ 
		public function DeleteAssociatedTableWatchListAsUser(TableWatchList $objTableWatchList) {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableWatchListAsUser on this unsaved TableUserProject.');
			if ((is_null($objTableWatchList->Id)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableWatchListAsUser on this TableUserProject with an unsaved TableWatchList.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_watch_list`
				WHERE
					`id` = ' . $objDatabase->SqlVariable($objTableWatchList->Id) . ' AND
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}

		/**
		 * Deletes all associated TableWatchListsAsUser
		 * @return void
		*/ 
		public function DeleteAllTableWatchListsAsUser() {
			if ((is_null($this->intId)))
				throw new QUndefinedPrimaryKeyException('Unable to call UnassociateTableWatchListAsUser on this unsaved TableUserProject.');

			// Get the Database Object for this Class
			$objDatabase = TableUserProject::GetDatabase();

			// Perform the SQL Query
			$objDatabase->NonQuery('
				DELETE FROM
					`table_watch_list`
				WHERE
					`user_id` = ' . $objDatabase->SqlVariable($this->intId) . '
			');
		}





		////////////////////////////////////////
		// METHODS for SOAP-BASED WEB SERVICES
		////////////////////////////////////////

		public static function GetSoapComplexTypeXml() {
			$strToReturn = '<complexType name="TableUserProject"><sequence>';
			$strToReturn .= '<element name="Id" type="xsd:int"/>';
			$strToReturn .= '<element name="CategoryId" type="xsd:int"/>';
			$strToReturn .= '<element name="SubcategoryId" type="xsd:int"/>';
			$strToReturn .= '<element name="UserName" type="xsd:string"/>';
			$strToReturn .= '<element name="Password" type="xsd:string"/>';
			$strToReturn .= '<element name="Firstname" type="xsd:string"/>';
			$strToReturn .= '<element name="Lastname" type="xsd:string"/>';
			$strToReturn .= '<element name="Companyname" type="xsd:string"/>';
			$strToReturn .= '<element name="Mail" type="xsd:string"/>';
			$strToReturn .= '<element name="Mail2" type="xsd:string"/>';
			$strToReturn .= '<element name="Ip" type="xsd:string"/>';
			$strToReturn .= '<element name="Country" type="xsd:string"/>';
			$strToReturn .= '<element name="City" type="xsd:string"/>';
			$strToReturn .= '<element name="Address1" type="xsd:string"/>';
			$strToReturn .= '<element name="Address2" type="xsd:string"/>';
			$strToReturn .= '<element name="PostalCode" type="xsd:string"/>';
			$strToReturn .= '<element name="Phone" type="xsd:string"/>';
			$strToReturn .= '<element name="Fax" type="xsd:string"/>';
			$strToReturn .= '<element name="LoginDate" type="xsd:dateTime"/>';
			$strToReturn .= '<element name="LogoutDate" type="xsd:dateTime"/>';
			$strToReturn .= '<element name="TimeupDate" type="xsd:dateTime"/>';
			$strToReturn .= '<element name="UserType" type="xsd:int"/>';
			$strToReturn .= '<element name="UserLevel" type="xsd:int"/>';
			$strToReturn .= '<element name="BoothCount" type="xsd:int"/>';
			$strToReturn .= '<element name="PortfolioCount" type="xsd:int"/>';
			$strToReturn .= '<element name="PointBalance" type="xsd:int"/>';
			$strToReturn .= '<element name="PointInTotal" type="xsd:int"/>';
			$strToReturn .= '<element name="PointOutTotal" type="xsd:int"/>';
			$strToReturn .= '<element name="PointChargedTotal" type="xsd:int"/>';
			$strToReturn .= '<element name="LanguageId" type="xsd:int"/>';
			$strToReturn .= '<element name="SendmailNews" type="xsd:string"/>';
			$strToReturn .= '<element name="SendmailByKeywordInNewProject" type="xsd:string"/>';
			$strToReturn .= '<element name="SendmailByNewBid" type="xsd:string"/>';
			$strToReturn .= '<element name="Keyword" type="xsd:string"/>';
			$strToReturn .= '<element name="RateAsBuyer" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsBuyer6month" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider6month" type="xsd:float"/>';
			$strToReturn .= '<element name="Authorized" type="xsd:string"/>';
			$strToReturn .= '<element name="AuthorizationCode" type="xsd:string"/>';
			$strToReturn .= '<element name="AuthorizedDate" type="xsd:dateTime"/>';
			$strToReturn .= '<element name="Active" type="xsd:string"/>';
			$strToReturn .= '<element name="Suspended" type="xsd:string"/>';
			$strToReturn .= '<element name="AffiliatorId" type="xsd:int"/>';
			$strToReturn .= '<element name="AffliatorCode" type="xsd:string"/>';
			$strToReturn .= '<element name="FirstnameKana" type="xsd:string"/>';
			$strToReturn .= '<element name="LastnameKana" type="xsd:string"/>';
			$strToReturn .= '<element name="Department" type="xsd:string"/>';
			$strToReturn .= '<element name="RegisterDate" type="xsd:dateTime"/>';
			$strToReturn .= '<element name="PercentageWillCharge" type="xsd:float"/>';
			$strToReturn .= '<element name="LastAccessDate" type="xsd:dateTime"/>';
			$strToReturn .= '<element name="RateAsBuyer1" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsBuyer2" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsBuyer3" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsBuyer4" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsBuyer5" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsBuyer6" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider1" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider2" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider3" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider4" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider5" type="xsd:float"/>';
			$strToReturn .= '<element name="RateAsProvider6" type="xsd:float"/>';
			$strToReturn .= '<element name="__blnRestored" type="xsd:boolean"/>';
			$strToReturn .= '</sequence></complexType>';
			return $strToReturn;
		}

		public static function AlterSoapComplexTypeArray(&$strComplexTypeArray) {
			if (!array_key_exists('TableUserProject', $strComplexTypeArray)) {
				$strComplexTypeArray['TableUserProject'] = TableUserProject::GetSoapComplexTypeXml();
			}
		}

		public static function GetArrayFromSoapArray($objSoapArray) {
			$objArrayToReturn = array();

			foreach ($objSoapArray as $objSoapObject)
				array_push($objArrayToReturn, TableUserProject::GetObjectFromSoapObject($objSoapObject));

			return $objArrayToReturn;
		}

		public static function GetObjectFromSoapObject($objSoapObject) {
			$objToReturn = new TableUserProject();
			if (property_exists($objSoapObject, 'Id'))
				$objToReturn->intId = $objSoapObject->Id;
			if (property_exists($objSoapObject, 'CategoryId'))
				$objToReturn->intCategoryId = $objSoapObject->CategoryId;
			if (property_exists($objSoapObject, 'SubcategoryId'))
				$objToReturn->intSubcategoryId = $objSoapObject->SubcategoryId;
			if (property_exists($objSoapObject, 'UserName'))
				$objToReturn->strUserName = $objSoapObject->UserName;
			if (property_exists($objSoapObject, 'Password'))
				$objToReturn->strPassword = $objSoapObject->Password;
			if (property_exists($objSoapObject, 'Firstname'))
				$objToReturn->strFirstname = $objSoapObject->Firstname;
			if (property_exists($objSoapObject, 'Lastname'))
				$objToReturn->strLastname = $objSoapObject->Lastname;
			if (property_exists($objSoapObject, 'Companyname'))
				$objToReturn->strCompanyname = $objSoapObject->Companyname;
			if (property_exists($objSoapObject, 'Mail'))
				$objToReturn->strMail = $objSoapObject->Mail;
			if (property_exists($objSoapObject, 'Mail2'))
				$objToReturn->strMail2 = $objSoapObject->Mail2;
			if (property_exists($objSoapObject, 'Ip'))
				$objToReturn->strIp = $objSoapObject->Ip;
			if (property_exists($objSoapObject, 'Country'))
				$objToReturn->strCountry = $objSoapObject->Country;
			if (property_exists($objSoapObject, 'City'))
				$objToReturn->strCity = $objSoapObject->City;
			if (property_exists($objSoapObject, 'Address1'))
				$objToReturn->strAddress1 = $objSoapObject->Address1;
			if (property_exists($objSoapObject, 'Address2'))
				$objToReturn->strAddress2 = $objSoapObject->Address2;
			if (property_exists($objSoapObject, 'PostalCode'))
				$objToReturn->strPostalCode = $objSoapObject->PostalCode;
			if (property_exists($objSoapObject, 'Phone'))
				$objToReturn->strPhone = $objSoapObject->Phone;
			if (property_exists($objSoapObject, 'Fax'))
				$objToReturn->strFax = $objSoapObject->Fax;
			if (property_exists($objSoapObject, 'LoginDate'))
				$objToReturn->dttLoginDate = new QDateTime($objSoapObject->LoginDate);
			if (property_exists($objSoapObject, 'LogoutDate'))
				$objToReturn->dttLogoutDate = new QDateTime($objSoapObject->LogoutDate);
			if (property_exists($objSoapObject, 'TimeupDate'))
				$objToReturn->dttTimeupDate = new QDateTime($objSoapObject->TimeupDate);
			if (property_exists($objSoapObject, 'UserType'))
				$objToReturn->intUserType = $objSoapObject->UserType;
			if (property_exists($objSoapObject, 'UserLevel'))
				$objToReturn->intUserLevel = $objSoapObject->UserLevel;
			if (property_exists($objSoapObject, 'BoothCount'))
				$objToReturn->intBoothCount = $objSoapObject->BoothCount;
			if (property_exists($objSoapObject, 'PortfolioCount'))
				$objToReturn->intPortfolioCount = $objSoapObject->PortfolioCount;
			if (property_exists($objSoapObject, 'PointBalance'))
				$objToReturn->intPointBalance = $objSoapObject->PointBalance;
			if (property_exists($objSoapObject, 'PointInTotal'))
				$objToReturn->intPointInTotal = $objSoapObject->PointInTotal;
			if (property_exists($objSoapObject, 'PointOutTotal'))
				$objToReturn->intPointOutTotal = $objSoapObject->PointOutTotal;
			if (property_exists($objSoapObject, 'PointChargedTotal'))
				$objToReturn->intPointChargedTotal = $objSoapObject->PointChargedTotal;
			if (property_exists($objSoapObject, 'LanguageId'))
				$objToReturn->intLanguageId = $objSoapObject->LanguageId;
			if (property_exists($objSoapObject, 'SendmailNews'))
				$objToReturn->strSendmailNews = $objSoapObject->SendmailNews;
			if (property_exists($objSoapObject, 'SendmailByKeywordInNewProject'))
				$objToReturn->strSendmailByKeywordInNewProject = $objSoapObject->SendmailByKeywordInNewProject;
			if (property_exists($objSoapObject, 'SendmailByNewBid'))
				$objToReturn->strSendmailByNewBid = $objSoapObject->SendmailByNewBid;
			if (property_exists($objSoapObject, 'Keyword'))
				$objToReturn->strKeyword = $objSoapObject->Keyword;
			if (property_exists($objSoapObject, 'RateAsBuyer'))
				$objToReturn->fltRateAsBuyer = $objSoapObject->RateAsBuyer;
			if (property_exists($objSoapObject, 'RateAsProvider'))
				$objToReturn->fltRateAsProvider = $objSoapObject->RateAsProvider;
			if (property_exists($objSoapObject, 'RateAsBuyer6month'))
				$objToReturn->fltRateAsBuyer6month = $objSoapObject->RateAsBuyer6month;
			if (property_exists($objSoapObject, 'RateAsProvider6month'))
				$objToReturn->fltRateAsProvider6month = $objSoapObject->RateAsProvider6month;
			if (property_exists($objSoapObject, 'Authorized'))
				$objToReturn->strAuthorized = $objSoapObject->Authorized;
			if (property_exists($objSoapObject, 'AuthorizationCode'))
				$objToReturn->strAuthorizationCode = $objSoapObject->AuthorizationCode;
			if (property_exists($objSoapObject, 'AuthorizedDate'))
				$objToReturn->dttAuthorizedDate = new QDateTime($objSoapObject->AuthorizedDate);
			if (property_exists($objSoapObject, 'Active'))
				$objToReturn->strActive = $objSoapObject->Active;
			if (property_exists($objSoapObject, 'Suspended'))
				$objToReturn->strSuspended = $objSoapObject->Suspended;
			if (property_exists($objSoapObject, 'AffiliatorId'))
				$objToReturn->intAffiliatorId = $objSoapObject->AffiliatorId;
			if (property_exists($objSoapObject, 'AffliatorCode'))
				$objToReturn->strAffliatorCode = $objSoapObject->AffliatorCode;
			if (property_exists($objSoapObject, 'FirstnameKana'))
				$objToReturn->strFirstnameKana = $objSoapObject->FirstnameKana;
			if (property_exists($objSoapObject, 'LastnameKana'))
				$objToReturn->strLastnameKana = $objSoapObject->LastnameKana;
			if (property_exists($objSoapObject, 'Department'))
				$objToReturn->strDepartment = $objSoapObject->Department;
			if (property_exists($objSoapObject, 'RegisterDate'))
				$objToReturn->dttRegisterDate = new QDateTime($objSoapObject->RegisterDate);
			if (property_exists($objSoapObject, 'PercentageWillCharge'))
				$objToReturn->fltPercentageWillCharge = $objSoapObject->PercentageWillCharge;
			if (property_exists($objSoapObject, 'LastAccessDate'))
				$objToReturn->dttLastAccessDate = new QDateTime($objSoapObject->LastAccessDate);
			if (property_exists($objSoapObject, 'RateAsBuyer1'))
				$objToReturn->fltRateAsBuyer1 = $objSoapObject->RateAsBuyer1;
			if (property_exists($objSoapObject, 'RateAsBuyer2'))
				$objToReturn->fltRateAsBuyer2 = $objSoapObject->RateAsBuyer2;
			if (property_exists($objSoapObject, 'RateAsBuyer3'))
				$objToReturn->fltRateAsBuyer3 = $objSoapObject->RateAsBuyer3;
			if (property_exists($objSoapObject, 'RateAsBuyer4'))
				$objToReturn->fltRateAsBuyer4 = $objSoapObject->RateAsBuyer4;
			if (property_exists($objSoapObject, 'RateAsBuyer5'))
				$objToReturn->fltRateAsBuyer5 = $objSoapObject->RateAsBuyer5;
			if (property_exists($objSoapObject, 'RateAsBuyer6'))
				$objToReturn->fltRateAsBuyer6 = $objSoapObject->RateAsBuyer6;
			if (property_exists($objSoapObject, 'RateAsProvider1'))
				$objToReturn->fltRateAsProvider1 = $objSoapObject->RateAsProvider1;
			if (property_exists($objSoapObject, 'RateAsProvider2'))
				$objToReturn->fltRateAsProvider2 = $objSoapObject->RateAsProvider2;
			if (property_exists($objSoapObject, 'RateAsProvider3'))
				$objToReturn->fltRateAsProvider3 = $objSoapObject->RateAsProvider3;
			if (property_exists($objSoapObject, 'RateAsProvider4'))
				$objToReturn->fltRateAsProvider4 = $objSoapObject->RateAsProvider4;
			if (property_exists($objSoapObject, 'RateAsProvider5'))
				$objToReturn->fltRateAsProvider5 = $objSoapObject->RateAsProvider5;
			if (property_exists($objSoapObject, 'RateAsProvider6'))
				$objToReturn->fltRateAsProvider6 = $objSoapObject->RateAsProvider6;
			if (property_exists($objSoapObject, '__blnRestored'))
				$objToReturn->__blnRestored = $objSoapObject->__blnRestored;
			return $objToReturn;
		}

		public static function GetSoapArrayFromArray($objArray) {
			if (!$objArray)
				return null;

			$objArrayToReturn = array();

			foreach ($objArray as $objObject)
				array_push($objArrayToReturn, TableUserProject::GetSoapObjectFromObject($objObject, true));

			return unserialize(serialize($objArrayToReturn));
		}

		public static function GetSoapObjectFromObject($objObject, $blnBindRelatedObjects) {
			if ($objObject->dttLoginDate)
				$objObject->dttLoginDate = $objObject->dttLoginDate->__toString(QDateTime::FormatSoap);
			if ($objObject->dttLogoutDate)
				$objObject->dttLogoutDate = $objObject->dttLogoutDate->__toString(QDateTime::FormatSoap);
			if ($objObject->dttTimeupDate)
				$objObject->dttTimeupDate = $objObject->dttTimeupDate->__toString(QDateTime::FormatSoap);
			if ($objObject->dttAuthorizedDate)
				$objObject->dttAuthorizedDate = $objObject->dttAuthorizedDate->__toString(QDateTime::FormatSoap);
			if ($objObject->dttRegisterDate)
				$objObject->dttRegisterDate = $objObject->dttRegisterDate->__toString(QDateTime::FormatSoap);
			if ($objObject->dttLastAccessDate)
				$objObject->dttLastAccessDate = $objObject->dttLastAccessDate->__toString(QDateTime::FormatSoap);
			return $objObject;
		}




	}



	/////////////////////////////////////
	// ADDITIONAL CLASSES for QCubed QUERY
	/////////////////////////////////////

	class QQNodeTableUserProject extends QQNode {
		protected $strTableName = 'table_user_project';
		protected $strPrimaryKey = 'id';
		protected $strClassName = 'TableUserProject';
		public function __get($strName) {
			switch ($strName) {
				case 'Id':
					return new QQNode('id', 'Id', 'integer', $this);
				case 'CategoryId':
					return new QQNode('category_id', 'CategoryId', 'integer', $this);
				case 'SubcategoryId':
					return new QQNode('subcategory_id', 'SubcategoryId', 'integer', $this);
				case 'UserName':
					return new QQNode('user_name', 'UserName', 'string', $this);
				case 'Password':
					return new QQNode('password', 'Password', 'string', $this);
				case 'Firstname':
					return new QQNode('firstname', 'Firstname', 'string', $this);
				case 'Lastname':
					return new QQNode('lastname', 'Lastname', 'string', $this);
				case 'Companyname':
					return new QQNode('companyname', 'Companyname', 'string', $this);
				case 'Mail':
					return new QQNode('mail', 'Mail', 'string', $this);
				case 'Mail2':
					return new QQNode('mail2', 'Mail2', 'string', $this);
				case 'Ip':
					return new QQNode('ip', 'Ip', 'string', $this);
				case 'Country':
					return new QQNode('country', 'Country', 'string', $this);
				case 'City':
					return new QQNode('city', 'City', 'string', $this);
				case 'Address1':
					return new QQNode('address1', 'Address1', 'string', $this);
				case 'Address2':
					return new QQNode('address2', 'Address2', 'string', $this);
				case 'PostalCode':
					return new QQNode('postal_code', 'PostalCode', 'string', $this);
				case 'Phone':
					return new QQNode('phone', 'Phone', 'string', $this);
				case 'Fax':
					return new QQNode('fax', 'Fax', 'string', $this);
				case 'LoginDate':
					return new QQNode('login_date', 'LoginDate', 'QDateTime', $this);
				case 'LogoutDate':
					return new QQNode('logout_date', 'LogoutDate', 'QDateTime', $this);
				case 'TimeupDate':
					return new QQNode('timeup_date', 'TimeupDate', 'QDateTime', $this);
				case 'UserType':
					return new QQNode('user_type', 'UserType', 'integer', $this);
				case 'UserLevel':
					return new QQNode('user_level', 'UserLevel', 'integer', $this);
				case 'BoothCount':
					return new QQNode('booth_count', 'BoothCount', 'integer', $this);
				case 'PortfolioCount':
					return new QQNode('portfolio_count', 'PortfolioCount', 'integer', $this);
				case 'PointBalance':
					return new QQNode('point_balance', 'PointBalance', 'integer', $this);
				case 'PointInTotal':
					return new QQNode('point_in_total', 'PointInTotal', 'integer', $this);
				case 'PointOutTotal':
					return new QQNode('point_out_total', 'PointOutTotal', 'integer', $this);
				case 'PointChargedTotal':
					return new QQNode('point_charged_total', 'PointChargedTotal', 'integer', $this);
				case 'LanguageId':
					return new QQNode('language_id', 'LanguageId', 'integer', $this);
				case 'SendmailNews':
					return new QQNode('sendmail_news', 'SendmailNews', 'string', $this);
				case 'SendmailByKeywordInNewProject':
					return new QQNode('sendmail_by_keyword_in_new_project', 'SendmailByKeywordInNewProject', 'string', $this);
				case 'SendmailByNewBid':
					return new QQNode('sendmail_by_new_bid', 'SendmailByNewBid', 'string', $this);
				case 'Keyword':
					return new QQNode('keyword', 'Keyword', 'string', $this);
				case 'RateAsBuyer':
					return new QQNode('rate_as_buyer', 'RateAsBuyer', 'double', $this);
				case 'RateAsProvider':
					return new QQNode('rate_as_provider', 'RateAsProvider', 'double', $this);
				case 'RateAsBuyer6month':
					return new QQNode('rate_as_buyer_6month', 'RateAsBuyer6month', 'double', $this);
				case 'RateAsProvider6month':
					return new QQNode('rate_as_provider_6month', 'RateAsProvider6month', 'double', $this);
				case 'Authorized':
					return new QQNode('authorized', 'Authorized', 'string', $this);
				case 'AuthorizationCode':
					return new QQNode('authorization_code', 'AuthorizationCode', 'string', $this);
				case 'AuthorizedDate':
					return new QQNode('authorized_date', 'AuthorizedDate', 'QDateTime', $this);
				case 'Active':
					return new QQNode('active', 'Active', 'string', $this);
				case 'Suspended':
					return new QQNode('suspended', 'Suspended', 'string', $this);
				case 'AffiliatorId':
					return new QQNode('affiliator_id', 'AffiliatorId', 'integer', $this);
				case 'AffliatorCode':
					return new QQNode('affliator_code', 'AffliatorCode', 'string', $this);
				case 'FirstnameKana':
					return new QQNode('firstname_kana', 'FirstnameKana', 'string', $this);
				case 'LastnameKana':
					return new QQNode('lastname_kana', 'LastnameKana', 'string', $this);
				case 'Department':
					return new QQNode('department', 'Department', 'string', $this);
				case 'RegisterDate':
					return new QQNode('register_date', 'RegisterDate', 'QDateTime', $this);
				case 'PercentageWillCharge':
					return new QQNode('percentage_will_charge', 'PercentageWillCharge', 'double', $this);
				case 'LastAccessDate':
					return new QQNode('last_access_date', 'LastAccessDate', 'QDateTime', $this);
				case 'RateAsBuyer1':
					return new QQNode('rate_as_buyer_1', 'RateAsBuyer1', 'double', $this);
				case 'RateAsBuyer2':
					return new QQNode('rate_as_buyer_2', 'RateAsBuyer2', 'double', $this);
				case 'RateAsBuyer3':
					return new QQNode('rate_as_buyer_3', 'RateAsBuyer3', 'double', $this);
				case 'RateAsBuyer4':
					return new QQNode('rate_as_buyer_4', 'RateAsBuyer4', 'double', $this);
				case 'RateAsBuyer5':
					return new QQNode('rate_as_buyer_5', 'RateAsBuyer5', 'double', $this);
				case 'RateAsBuyer6':
					return new QQNode('rate_as_buyer_6', 'RateAsBuyer6', 'double', $this);
				case 'RateAsProvider1':
					return new QQNode('rate_as_provider_1', 'RateAsProvider1', 'double', $this);
				case 'RateAsProvider2':
					return new QQNode('rate_as_provider_2', 'RateAsProvider2', 'double', $this);
				case 'RateAsProvider3':
					return new QQNode('rate_as_provider_3', 'RateAsProvider3', 'double', $this);
				case 'RateAsProvider4':
					return new QQNode('rate_as_provider_4', 'RateAsProvider4', 'double', $this);
				case 'RateAsProvider5':
					return new QQNode('rate_as_provider_5', 'RateAsProvider5', 'double', $this);
				case 'RateAsProvider6':
					return new QQNode('rate_as_provider_6', 'RateAsProvider6', 'double', $this);
				case 'TableBankAsUser':
					return new QQReverseReferenceNodeTableBank($this, 'tablebankasuser', 'reverse_reference', 'user_id');
				case 'TableBankRequestInAsUser':
					return new QQReverseReferenceNodeTableBankRequestIn($this, 'tablebankrequestinasuser', 'reverse_reference', 'user_id');
				case 'TableBankRequestOutAsUser':
					return new QQReverseReferenceNodeTableBankRequestOut($this, 'tablebankrequestoutasuser', 'reverse_reference', 'user_id');
				case 'TableBoothAsUser':
					return new QQReverseReferenceNodeTableBooth($this, 'tableboothasuser', 'reverse_reference', 'user_id');
				case 'TableEscrowAsUserIdFrom':
					return new QQReverseReferenceNodeTableEscrow($this, 'tableescrowasuseridfrom', 'reverse_reference', 'user_id_from');
				case 'TableEscrowAsUserIdTo':
					return new QQReverseReferenceNodeTableEscrow($this, 'tableescrowasuseridto', 'reverse_reference', 'user_id_to');
				case 'TableFeedbackAsUser':
					return new QQReverseReferenceNodeTableFeedback($this, 'tablefeedbackasuser', 'reverse_reference', 'user_id');
				case 'TableItemGetAsUser':
					return new QQReverseReferenceNodeTableItemGet($this, 'tableitemgetasuser', 'reverse_reference', 'user_id');
				case 'TablePaypalRequestOutAsUser':
					return new QQReverseReferenceNodeTablePaypalRequestOut($this, 'tablepaypalrequestoutasuser', 'reverse_reference', 'user_id');
				case 'TablePointChargedAsUser':
					return new QQReverseReferenceNodeTablePointCharged($this, 'tablepointchargedasuser', 'reverse_reference', 'user_id');
				case 'TablePointInAsUser':
					return new QQReverseReferenceNodeTablePointIn($this, 'tablepointinasuser', 'reverse_reference', 'user_id');
				case 'TablePointOutAsUser':
					return new QQReverseReferenceNodeTablePointOut($this, 'tablepointoutasuser', 'reverse_reference', 'user_id');
				case 'TablePortfolioAsUser':
					return new QQReverseReferenceNodeTablePortfolio($this, 'tableportfolioasuser', 'reverse_reference', 'user_id');
				case 'TablePrivateMessageAsUserIdFrom':
					return new QQReverseReferenceNodeTablePrivateMessage($this, 'tableprivatemessageasuseridfrom', 'reverse_reference', 'user_id_from');
				case 'TablePrivateMessageAsUserIdTo':
					return new QQReverseReferenceNodeTablePrivateMessage($this, 'tableprivatemessageasuseridto', 'reverse_reference', 'user_id_to');
				case 'TableProjectAsUser':
					return new QQReverseReferenceNodeTableProject($this, 'tableprojectasuser', 'reverse_reference', 'user_id');
				case 'TableProjectAsWonUser':
					return new QQReverseReferenceNodeTableProject($this, 'tableprojectaswonuser', 'reverse_reference', 'won_user_id');
				case 'TableProjectAttachmentAsUser':
					return new QQReverseReferenceNodeTableProjectAttachment($this, 'tableprojectattachmentasuser', 'reverse_reference', 'user_id');
				case 'TableProjectBidAsUser':
					return new QQReverseReferenceNodeTableProjectBid($this, 'tableprojectbidasuser', 'reverse_reference', 'user_id');
				case 'TableProjectCancelAsUser':
					return new QQReverseReferenceNodeTableProjectCancel($this, 'tableprojectcancelasuser', 'reverse_reference', 'user_id');
				case 'TableProjectEditAsUser':
					return new QQReverseReferenceNodeTableProjectEdit($this, 'tableprojecteditasuser', 'reverse_reference', 'user_id');
				case 'TableProjectMessageAsUser':
					return new QQReverseReferenceNodeTableProjectMessage($this, 'tableprojectmessageasuser', 'reverse_reference', 'user_id');
				case 'TableProjectRequestCancelAsBuyer':
					return new QQReverseReferenceNodeTableProjectRequestCancel($this, 'tableprojectrequestcancelasbuyer', 'reverse_reference', 'buyer_id');
				case 'TableProjectRequestCancelAsProvider':
					return new QQReverseReferenceNodeTableProjectRequestCancel($this, 'tableprojectrequestcancelasprovider', 'reverse_reference', 'provider_id');
				case 'TableProjectRequestCompleteAsBuyer':
					return new QQReverseReferenceNodeTableProjectRequestComplete($this, 'tableprojectrequestcompleteasbuyer', 'reverse_reference', 'buyer_id');
				case 'TableProjectRequestCompleteAsProvider':
					return new QQReverseReferenceNodeTableProjectRequestComplete($this, 'tableprojectrequestcompleteasprovider', 'reverse_reference', 'provider_id');
				case 'TableProjectWonAsBuyer':
					return new QQReverseReferenceNodeTableProjectWon($this, 'tableprojectwonasbuyer', 'reverse_reference', 'buyer_id');
				case 'TableProjectWonAsProvider':
					return new QQReverseReferenceNodeTableProjectWon($this, 'tableprojectwonasprovider', 'reverse_reference', 'provider_id');
				case 'TableTransactionAsUser':
					return new QQReverseReferenceNodeTableTransaction($this, 'tabletransactionasuser', 'reverse_reference', 'user_id');
				case 'TableUserAddressAsUser':
					return new QQReverseReferenceNodeTableUserAddress($this, 'tableuseraddressasuser', 'reverse_reference', 'user_id');
				case 'TableUserItemAsUser':
					return new QQReverseReferenceNodeTableUserItem($this, 'tableuseritemasuser', 'reverse_reference', 'user_id');
				case 'TableUserProfileAsUser':
					return new QQReverseReferenceNodeTableUserProfile($this, 'tableuserprofileasuser', 'reverse_reference', 'user_id');
				case 'TableUserStatAsUser':
					return new QQReverseReferenceNodeTableUserStat($this, 'tableuserstatasuser', 'reverse_reference', 'user_id');
				case 'TableViolationReportAsUser':
					return new QQReverseReferenceNodeTableViolationReport($this, 'tableviolationreportasuser', 'reverse_reference', 'user_id');
				case 'TableWatchListAsUser':
					return new QQReverseReferenceNodeTableWatchList($this, 'tablewatchlistasuser', 'reverse_reference', 'user_id');

				case '_PrimaryKeyNode':
					return new QQNode('id', 'Id', 'integer', $this);
				default:
					try {
						return parent::__get($strName);
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}
			}
		}
	}

	class QQReverseReferenceNodeTableUserProject extends QQReverseReferenceNode {
		protected $strTableName = 'table_user_project';
		protected $strPrimaryKey = 'id';
		protected $strClassName = 'TableUserProject';
		public function __get($strName) {
			switch ($strName) {
				case 'Id':
					return new QQNode('id', 'Id', 'integer', $this);
				case 'CategoryId':
					return new QQNode('category_id', 'CategoryId', 'integer', $this);
				case 'SubcategoryId':
					return new QQNode('subcategory_id', 'SubcategoryId', 'integer', $this);
				case 'UserName':
					return new QQNode('user_name', 'UserName', 'string', $this);
				case 'Password':
					return new QQNode('password', 'Password', 'string', $this);
				case 'Firstname':
					return new QQNode('firstname', 'Firstname', 'string', $this);
				case 'Lastname':
					return new QQNode('lastname', 'Lastname', 'string', $this);
				case 'Companyname':
					return new QQNode('companyname', 'Companyname', 'string', $this);
				case 'Mail':
					return new QQNode('mail', 'Mail', 'string', $this);
				case 'Mail2':
					return new QQNode('mail2', 'Mail2', 'string', $this);
				case 'Ip':
					return new QQNode('ip', 'Ip', 'string', $this);
				case 'Country':
					return new QQNode('country', 'Country', 'string', $this);
				case 'City':
					return new QQNode('city', 'City', 'string', $this);
				case 'Address1':
					return new QQNode('address1', 'Address1', 'string', $this);
				case 'Address2':
					return new QQNode('address2', 'Address2', 'string', $this);
				case 'PostalCode':
					return new QQNode('postal_code', 'PostalCode', 'string', $this);
				case 'Phone':
					return new QQNode('phone', 'Phone', 'string', $this);
				case 'Fax':
					return new QQNode('fax', 'Fax', 'string', $this);
				case 'LoginDate':
					return new QQNode('login_date', 'LoginDate', 'QDateTime', $this);
				case 'LogoutDate':
					return new QQNode('logout_date', 'LogoutDate', 'QDateTime', $this);
				case 'TimeupDate':
					return new QQNode('timeup_date', 'TimeupDate', 'QDateTime', $this);
				case 'UserType':
					return new QQNode('user_type', 'UserType', 'integer', $this);
				case 'UserLevel':
					return new QQNode('user_level', 'UserLevel', 'integer', $this);
				case 'BoothCount':
					return new QQNode('booth_count', 'BoothCount', 'integer', $this);
				case 'PortfolioCount':
					return new QQNode('portfolio_count', 'PortfolioCount', 'integer', $this);
				case 'PointBalance':
					return new QQNode('point_balance', 'PointBalance', 'integer', $this);
				case 'PointInTotal':
					return new QQNode('point_in_total', 'PointInTotal', 'integer', $this);
				case 'PointOutTotal':
					return new QQNode('point_out_total', 'PointOutTotal', 'integer', $this);
				case 'PointChargedTotal':
					return new QQNode('point_charged_total', 'PointChargedTotal', 'integer', $this);
				case 'LanguageId':
					return new QQNode('language_id', 'LanguageId', 'integer', $this);
				case 'SendmailNews':
					return new QQNode('sendmail_news', 'SendmailNews', 'string', $this);
				case 'SendmailByKeywordInNewProject':
					return new QQNode('sendmail_by_keyword_in_new_project', 'SendmailByKeywordInNewProject', 'string', $this);
				case 'SendmailByNewBid':
					return new QQNode('sendmail_by_new_bid', 'SendmailByNewBid', 'string', $this);
				case 'Keyword':
					return new QQNode('keyword', 'Keyword', 'string', $this);
				case 'RateAsBuyer':
					return new QQNode('rate_as_buyer', 'RateAsBuyer', 'double', $this);
				case 'RateAsProvider':
					return new QQNode('rate_as_provider', 'RateAsProvider', 'double', $this);
				case 'RateAsBuyer6month':
					return new QQNode('rate_as_buyer_6month', 'RateAsBuyer6month', 'double', $this);
				case 'RateAsProvider6month':
					return new QQNode('rate_as_provider_6month', 'RateAsProvider6month', 'double', $this);
				case 'Authorized':
					return new QQNode('authorized', 'Authorized', 'string', $this);
				case 'AuthorizationCode':
					return new QQNode('authorization_code', 'AuthorizationCode', 'string', $this);
				case 'AuthorizedDate':
					return new QQNode('authorized_date', 'AuthorizedDate', 'QDateTime', $this);
				case 'Active':
					return new QQNode('active', 'Active', 'string', $this);
				case 'Suspended':
					return new QQNode('suspended', 'Suspended', 'string', $this);
				case 'AffiliatorId':
					return new QQNode('affiliator_id', 'AffiliatorId', 'integer', $this);
				case 'AffliatorCode':
					return new QQNode('affliator_code', 'AffliatorCode', 'string', $this);
				case 'FirstnameKana':
					return new QQNode('firstname_kana', 'FirstnameKana', 'string', $this);
				case 'LastnameKana':
					return new QQNode('lastname_kana', 'LastnameKana', 'string', $this);
				case 'Department':
					return new QQNode('department', 'Department', 'string', $this);
				case 'RegisterDate':
					return new QQNode('register_date', 'RegisterDate', 'QDateTime', $this);
				case 'PercentageWillCharge':
					return new QQNode('percentage_will_charge', 'PercentageWillCharge', 'double', $this);
				case 'LastAccessDate':
					return new QQNode('last_access_date', 'LastAccessDate', 'QDateTime', $this);
				case 'RateAsBuyer1':
					return new QQNode('rate_as_buyer_1', 'RateAsBuyer1', 'double', $this);
				case 'RateAsBuyer2':
					return new QQNode('rate_as_buyer_2', 'RateAsBuyer2', 'double', $this);
				case 'RateAsBuyer3':
					return new QQNode('rate_as_buyer_3', 'RateAsBuyer3', 'double', $this);
				case 'RateAsBuyer4':
					return new QQNode('rate_as_buyer_4', 'RateAsBuyer4', 'double', $this);
				case 'RateAsBuyer5':
					return new QQNode('rate_as_buyer_5', 'RateAsBuyer5', 'double', $this);
				case 'RateAsBuyer6':
					return new QQNode('rate_as_buyer_6', 'RateAsBuyer6', 'double', $this);
				case 'RateAsProvider1':
					return new QQNode('rate_as_provider_1', 'RateAsProvider1', 'double', $this);
				case 'RateAsProvider2':
					return new QQNode('rate_as_provider_2', 'RateAsProvider2', 'double', $this);
				case 'RateAsProvider3':
					return new QQNode('rate_as_provider_3', 'RateAsProvider3', 'double', $this);
				case 'RateAsProvider4':
					return new QQNode('rate_as_provider_4', 'RateAsProvider4', 'double', $this);
				case 'RateAsProvider5':
					return new QQNode('rate_as_provider_5', 'RateAsProvider5', 'double', $this);
				case 'RateAsProvider6':
					return new QQNode('rate_as_provider_6', 'RateAsProvider6', 'double', $this);
				case 'TableBankAsUser':
					return new QQReverseReferenceNodeTableBank($this, 'tablebankasuser', 'reverse_reference', 'user_id');
				case 'TableBankRequestInAsUser':
					return new QQReverseReferenceNodeTableBankRequestIn($this, 'tablebankrequestinasuser', 'reverse_reference', 'user_id');
				case 'TableBankRequestOutAsUser':
					return new QQReverseReferenceNodeTableBankRequestOut($this, 'tablebankrequestoutasuser', 'reverse_reference', 'user_id');
				case 'TableBoothAsUser':
					return new QQReverseReferenceNodeTableBooth($this, 'tableboothasuser', 'reverse_reference', 'user_id');
				case 'TableEscrowAsUserIdFrom':
					return new QQReverseReferenceNodeTableEscrow($this, 'tableescrowasuseridfrom', 'reverse_reference', 'user_id_from');
				case 'TableEscrowAsUserIdTo':
					return new QQReverseReferenceNodeTableEscrow($this, 'tableescrowasuseridto', 'reverse_reference', 'user_id_to');
				case 'TableFeedbackAsUser':
					return new QQReverseReferenceNodeTableFeedback($this, 'tablefeedbackasuser', 'reverse_reference', 'user_id');
				case 'TableItemGetAsUser':
					return new QQReverseReferenceNodeTableItemGet($this, 'tableitemgetasuser', 'reverse_reference', 'user_id');
				case 'TablePaypalRequestOutAsUser':
					return new QQReverseReferenceNodeTablePaypalRequestOut($this, 'tablepaypalrequestoutasuser', 'reverse_reference', 'user_id');
				case 'TablePointChargedAsUser':
					return new QQReverseReferenceNodeTablePointCharged($this, 'tablepointchargedasuser', 'reverse_reference', 'user_id');
				case 'TablePointInAsUser':
					return new QQReverseReferenceNodeTablePointIn($this, 'tablepointinasuser', 'reverse_reference', 'user_id');
				case 'TablePointOutAsUser':
					return new QQReverseReferenceNodeTablePointOut($this, 'tablepointoutasuser', 'reverse_reference', 'user_id');
				case 'TablePortfolioAsUser':
					return new QQReverseReferenceNodeTablePortfolio($this, 'tableportfolioasuser', 'reverse_reference', 'user_id');
				case 'TablePrivateMessageAsUserIdFrom':
					return new QQReverseReferenceNodeTablePrivateMessage($this, 'tableprivatemessageasuseridfrom', 'reverse_reference', 'user_id_from');
				case 'TablePrivateMessageAsUserIdTo':
					return new QQReverseReferenceNodeTablePrivateMessage($this, 'tableprivatemessageasuseridto', 'reverse_reference', 'user_id_to');
				case 'TableProjectAsUser':
					return new QQReverseReferenceNodeTableProject($this, 'tableprojectasuser', 'reverse_reference', 'user_id');
				case 'TableProjectAsWonUser':
					return new QQReverseReferenceNodeTableProject($this, 'tableprojectaswonuser', 'reverse_reference', 'won_user_id');
				case 'TableProjectAttachmentAsUser':
					return new QQReverseReferenceNodeTableProjectAttachment($this, 'tableprojectattachmentasuser', 'reverse_reference', 'user_id');
				case 'TableProjectBidAsUser':
					return new QQReverseReferenceNodeTableProjectBid($this, 'tableprojectbidasuser', 'reverse_reference', 'user_id');
				case 'TableProjectCancelAsUser':
					return new QQReverseReferenceNodeTableProjectCancel($this, 'tableprojectcancelasuser', 'reverse_reference', 'user_id');
				case 'TableProjectEditAsUser':
					return new QQReverseReferenceNodeTableProjectEdit($this, 'tableprojecteditasuser', 'reverse_reference', 'user_id');
				case 'TableProjectMessageAsUser':
					return new QQReverseReferenceNodeTableProjectMessage($this, 'tableprojectmessageasuser', 'reverse_reference', 'user_id');
				case 'TableProjectRequestCancelAsBuyer':
					return new QQReverseReferenceNodeTableProjectRequestCancel($this, 'tableprojectrequestcancelasbuyer', 'reverse_reference', 'buyer_id');
				case 'TableProjectRequestCancelAsProvider':
					return new QQReverseReferenceNodeTableProjectRequestCancel($this, 'tableprojectrequestcancelasprovider', 'reverse_reference', 'provider_id');
				case 'TableProjectRequestCompleteAsBuyer':
					return new QQReverseReferenceNodeTableProjectRequestComplete($this, 'tableprojectrequestcompleteasbuyer', 'reverse_reference', 'buyer_id');
				case 'TableProjectRequestCompleteAsProvider':
					return new QQReverseReferenceNodeTableProjectRequestComplete($this, 'tableprojectrequestcompleteasprovider', 'reverse_reference', 'provider_id');
				case 'TableProjectWonAsBuyer':
					return new QQReverseReferenceNodeTableProjectWon($this, 'tableprojectwonasbuyer', 'reverse_reference', 'buyer_id');
				case 'TableProjectWonAsProvider':
					return new QQReverseReferenceNodeTableProjectWon($this, 'tableprojectwonasprovider', 'reverse_reference', 'provider_id');
				case 'TableTransactionAsUser':
					return new QQReverseReferenceNodeTableTransaction($this, 'tabletransactionasuser', 'reverse_reference', 'user_id');
				case 'TableUserAddressAsUser':
					return new QQReverseReferenceNodeTableUserAddress($this, 'tableuseraddressasuser', 'reverse_reference', 'user_id');
				case 'TableUserItemAsUser':
					return new QQReverseReferenceNodeTableUserItem($this, 'tableuseritemasuser', 'reverse_reference', 'user_id');
				case 'TableUserProfileAsUser':
					return new QQReverseReferenceNodeTableUserProfile($this, 'tableuserprofileasuser', 'reverse_reference', 'user_id');
				case 'TableUserStatAsUser':
					return new QQReverseReferenceNodeTableUserStat($this, 'tableuserstatasuser', 'reverse_reference', 'user_id');
				case 'TableViolationReportAsUser':
					return new QQReverseReferenceNodeTableViolationReport($this, 'tableviolationreportasuser', 'reverse_reference', 'user_id');
				case 'TableWatchListAsUser':
					return new QQReverseReferenceNodeTableWatchList($this, 'tablewatchlistasuser', 'reverse_reference', 'user_id');

				case '_PrimaryKeyNode':
					return new QQNode('id', 'Id', 'integer', $this);
				default:
					try {
						return parent::__get($strName);
					} catch (QCallerException $objExc) {
						$objExc->IncrementOffset();
						throw $objExc;
					}
			}
		}
	}

?>